前回記事「MovableTypeとMysqlの不具合_3(Mysql4.1系ソースからインストール作業)」 では、mysqlを再インストールして以前のMovableTypeのDBsqlダンプを実行しました。
これでやるべき事はやったので以前のようにMovableTypeが使えるカナと思ったけど、ログイン画面を開こうとしたら以下のエラーメッセージが表示された。
Got an error: データベース接続の設定に誤りがあります: エラーが発生しました: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
漠然としたエラーメッセージ。これじゃ解らん・・・
ネットで調べてみたら、同じエラーについて書かれたサイトを発見。
「Can't connect to local MySQL server through socket」
エラーについて
書いてあるようにmy.cnfファイルを作成したが直らない。
/var/lib/mysql/mysql.sock・・・
こんなファイル見当たらない。/tmp/mysql.sockならあるんだけど。
/var/lib/mysql/mysql.sockを読み込むような設定は何処に書いてあるんだろうか?
シックスアパートのMovableTypeのオンラインマニュアルで発見。
mt-config.cgiに" DBSocket /tmp/mysql.sock"の一行を追加。
再び、ログイン画面を開いてみる。
エラーはまだ出るが、さっきとは違うメッセージ。
Got an error: データベース接続の設定に誤りがあります: エラーが発生しました: Access denied for user 'hoge_user'@'localhost' (using password: YES)
あぁ、そういえばMovableTypeのmysql用にhoge_userというユーザを作成したっけ。
ユーザを作成し、パスワードも設定。
mysql> grant select,insert,update,delete,create,index,alter on mt3_db.* to hoge_user@localhost
identified by 'hoge_user';
Query OK, 0 rows affected (0.05 sec)
mysql> quit
Bye
# mysql -uhoge_user -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 15 to server version: 4.1.7
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> quit
再度ログイン画面へ。
Got an error: データベース接続の設定に誤りがあります: エラーが発生しました: Client does not support authentication protocol requested by server; consider upgrading MySQL client
まだ出るか。
パスワードの認証時にこけてるっぽい。