最近HomebrewでインストールしたMySQLの調子が悪いので調べてみました。
プロセスをチェックして、ログのパスをチェックします。
$ ps auxww | grep mysql /usr/local/Cellar/mysql/5.6.24/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.24 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.24/lib/plugin --bind-address=127.0.0.1 --log-error=/usr/local/var/mysql/hoge.local.err --pid-file=/usr/local/var/mysql/hoge.local.pid
**–log-error=/usr/local/var/mysql/hoge.local.err **
にログが出ているようなのでログを確認してみます。
less /usr/local/var/mysql/hoge.local.err
以下のようなログが出ていました。
InnoDB: Error: Table "mysql"."innodb_table_stats" not found. InnoDB: Error: Fetch of persistent statistics requested for table "org001"."eip_t_message_read" but the required system tables mysql.innodb_table_stats and mysql.innodb_index_stats are not present or have unexpected structure. Using transient stats instead.
どうやらこれが原因のようです。
- http://sawara.me/mysql/2204/
- https://14code.com/blog/20130625_504
- http://www.bunkei-programmer.net/entry/2014/08/25/230357
mysql -u root -p mysql mysql> drop table innodb_index_stats; ERROR 1051 (42S02): Unknown table 'mysql.innodb_index_stats' mysql> drop table innodb_table_stats; ERROR 1051 (42S02): Unknown table 'mysql.innodb_table_stats' mysql> drop table slave_master_info; ERROR 1051 (42S02): Unknown table 'mysql.slave_master_info' mysql> drop table slave_relay_log_info; ERROR 1051 (42S02): Unknown table 'mysql.slave_relay_log_info' mysql> drop table slave_worker_info; ERROR 1051 (42S02): Unknown table 'mysql.slave_worker_info'
テーブルいないようです。
.frm と .ibd ファイルを消すのですがパスは最初のプロセスにある
–datadir=/usr/local/var/mysql
をもとに探します。
/usr/local/var/mysql/mysql
の中に .ibd ファイルだけあったので削除してMySQLを再起動してみました。