GattsCOM

ブログ

BLOG

  1. Home
  2. Blog

PHPを5.3から5.4にアップデートしたらMySQLが接続できなくなった時の対処

Laravelフレームワークを使用しようと、古いサーバーに開発環境入れようと思い

PHPのバージョンを調べたらPHP5.3.3だった。


Laravel4.2を入れようと思ったら、PHP5.4以上だったのでPHPのバージョンをアップデートした。


その際に、MySQLもアップデートされてMySQL5.1.73から5.5.62になった。

ここで、PHPは問題なく動いてたけどMySQLで接続エラーが出ていて結構ハマっちゃいまいた。


Can't connect to local MySQL server through socket '/tmp/mysql.sock'(2)

↑のエラーが出ていたので、グーグル先生に聞いてみたら


mysql.sockがないよと言われる



/var/lib/mysqlの中を確認する


mysql.sockが確かに無い。


ということで、mysql.sockをとりあえず作る。

touch mysql.sock

ls -la

mysql.sockが出来たので、再度確認する

Can't connect to local MySQL server through socket '/tmp/mysql.sock'(111)

お?次は()の中が2 → 111になったぞ?

調べてみると、ソケットエラーらしい。


パーミッションを見て変更してみる。

chmod 777 mysql.sock

再度試したけど接続エラーが消えない(111のまま)


うーん・・・・・


エラーを見てみよう

vi /var/log/mysqld.log

[ERROR] /usr/libexec/mysqld: unknown variable 'default-character-set=utf8'

お、なんかエラー上がってるやん


ちょっと調べてみるとMySQLのアップデートしたバージョンで'default-character-set=utf8'は使えないよ!って怒られてるらしい

それじゃなくて、character-set-server=utf8を使ってね!ってどこかに書いてました。


my.cnfの設定を変更する

//my.cnf

#default-character-set=utf8 ← コメントアウト
character-set-server=utf8 ← 追加

保存して、mysqlサーバーをリスタートしたら、無事に起動してくれました。


ハマって3時間も悩んでしまった・・・勿体無いT_T