web-dev-qa-db-ja.com

MySQLのインストール後のエラー

Mysqlをインストールした後、次のエラーが発生します。

> 120105  6:02:49 [Warning] Setting lower_case_table_names=2 because
> file system for /usr/local/var/mysql/ is case insensitive mysqld:
> Table 'mysql.plugin' doesn't exist
> **120105  6:02:49 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.** 120105  6:02:49 InnoDB: The InnoDB
> memory heap is disabled 120105  6:02:49 InnoDB: Mutexes and rw_locks
> use GCC atomic builtins 120105  6:02:49 InnoDB: Compressed tables use
> zlib 1.2.5 120105  6:02:49 InnoDB: Initializing buffer pool, size =
> 128.0M 120105  6:02:49 InnoDB: Completed initialization of buffer pool 120105  6:02:49 InnoDB: highest supported file format is Barracuda.
> 120105  6:02:49  InnoDB: Waiting for the background threads to start
> 120105  6:02:50 InnoDB: 1.1.8 started; log sequence number 1595675
> **120105  6:02:50 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.Host' doesn't exist**

Mysql_upgradeを実行しようとしたところ、次のようになりました。

Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck with default connection arguments
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) when trying to connect
FATAL ERROR: Upgrade failed

Mysqlを再インストールしようとしました。同じ結果が得られます。

誰かがこれを機能させるためにいくつかの便利なトリックを提案できるかどうか疑問に思っています。 10.7.2を実行しているMacを使用しています

よろしくお願いします。

4
David

私が見る問題は言うエラーメッセージです

テーブル 'mysql.plugin'は存在しません** 120105 6:02:49 [エラー] mysql.pluginテーブルを開けません。 mysql_upgradeを実行して作成してください

MySQL 5.1はプラグインを導入しました。 MySQL 5.0以前にはプラグインがありません。私の推測では、MySQL 5.0を実行していて、MySQL 5.0をアンインストールして、MySQL 5.1または5.5のいずれかをインストールしようとしたところ、mysql.pluginが見つからないという不満がありました。

次のように5.0インストールをクリーンアップしてみてください

  • mysql 5.0をアンインストールする
  • / usr/local/var/mysqlを/ usr/local/var/mysql_oldに移動します
  • Mysql 5.5をインストールする

試してみる !!!

1
RolandoMySQLDBA

RolandoMySQLDBAの代替ソリューションとして、そのような場合のためにビルドされたmysql_upgradeユーティリティを実行してみることもできます。

サーバーがロードされた後に実行する必要があります(エラーなど)。次に、クライアントとして接続し、必要なシステムテーブルを追加および変更して、機能したかどうかを通知します。

0
Shlomi Noach