LoginSignup
7
5

More than 5 years have passed since last update.

Homebrewを使って入れたMySQLが動かない状態に陥った下らない原因

Last updated at Posted at 2016-01-12

homebrew経由でインストールしていたつもりのMySQLが全く動かなくて長い間放置していた問題がたまたま解消できたので、記念のメモ代わりに投稿。

homebrewからMySQLを何度もアンインストールし、Stack Overflowや各種ネットに書いてあったhomebrewでインストールした場合のMySQLの不具合に関して調べまくったけれど、解消しなかった状態でした。

原因

結論を先に書くと、原因は下らなくて、 設定ファイルのmy.cnfが古いまま消し忘れていたこと でした。

詳しくは後述。

出ていたエラー

各種ネットの情報を駆使しても、以下のエラーがつぶせない状態でした。

$ mysqld --initialize-insecure --user=taku --basedir=/usr/local/Cellar/mysql/5.7.10 --datadir=/usr/local/var/mysql --tmpdir=/tmp --explicit_defaults_for_timestamp
2016-01-12T11:35:11.104978Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
 100
 100
2016-01-12T11:35:27.326652Z 0 [Warning] InnoDB: New log files created, LSN=45790
2016-01-12T11:35:28.053387Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2016-01-12T11:35:28.110798Z 0 [ERROR] unknown variable 'innodb_additional_mem_pool_size=16M'
2016-01-12T11:35:28.110818Z 0 [ERROR] Aborting

この[ERROR] unknown variable 'innodb_additional_mem_pool_size=16M'が問題なんだろうと色々ググったりしてみて、innodb_additional_mem_pool_sizeというオプションは現在はdeprecatedになっているらしいということまで突き止めましたが、どこでその値が読み込まれているのか分からずにずっと放置していました。

たまたま今回またMySQLをいじる機会があったので再度いじったところ、たまたまmy.cnfについて書いてある記事を見かけて、「もしかしてMySQLどころかDBもよく分からない時にいじった設定ファイルが残ったままで、そこにinvalidなオプションがあるからエラーになっているのでは?」と思い、参考資料に書いてあった以下のコマンドを使い、該当する場所にmy.cnfがないか探してみました。

$ mysql --help | grep my.cnf
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf

案の定、/usr/local/etc/my.cnfだけが残っていて、そこにinnodb_additional_mem_pool_size=16Mと記載されていてエラーを出していたようなので、このmy.cnfを消してbrew postinstall mysqlをしたところ、mysql.server startをしてもエラーが出なくなり、直接Mac上でMySQLが使えるようになりました。

まとめ

古くて不必要になったものはさっさと消しておきましょう。

参考資料

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5