まだまだ起動しないwordpress
phpやmysqlをインストールしなおしてwordpressを起動しようとしたが、wordpressのページに「データベース接続確立エラー」というエラーが表示されて起動しない。
/var/log/mysqld.logには以下のようなログが残されてた。
140812 18:06:02 [ERROR] /usr/libexec/mysqld: Incorrect information in file: './kabulog/wp_users.frm' 140812 18:23:36 [ERROR] Missing system table mysql.proxies_priv; please run mysql_upgrade to create it 140812 18:23:36 [ERROR] /usr/libexec/mysqld: Incorrect information in file: './mysql/tables_priv.frm'
いろいろやりすぎて何だかもう疲れてしまったので、wordpress自体をもう一度インストールしなおすことにした。
旧wordpressのディレクトリを全削除して、再度worspressのバイナリを展開。
wordpressのページにアクセスして初期設定をしようとしたが、また「データベース接続確立エラー」がでてきてしまった。
もっと具体的なエラー内容を知るために、wordpressのwp-config.phpを修正してデバッグモードを有効にしてみた。
//define('WP_DEBUG', false); define('WP_DEBUG', true);
そうすると「データベース接続確立エラー」の画面に以下のログが出力された。
Warning: mysql_connect(): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /hogehoge/wp/wp-includes/wp-db.php on line 1372
なにやらmysqlへのソケット接続に失敗している様子。/etc/my.cnfの記述を以下のように変更してみた。
#socket=/var/lib/mysql/mysql.sock socket=/tmp/mysql.sock
mysqlも再起動しておく。
service mysqld restart
そしてwordpressに再接続してみると、接続成功!これが原因だったか!
はじめインストールしたときはsocketファイルの記述は何も変更しないでいけたんだけどな・・phpとかmysqlのバージョンをいろいろ変えたからこの変更が必要になったんだろうか。
ともあれやっとwordpressがまともに動いたみたい。でもこの調子じゃ運用中もいろいろ不具合が起きるんだろうな・・先が思いやられるわ。。