[MySQL] default-character-set で起動が失敗する

MySQL 5.5.13 にて default-character-set=utf8 を書いた後、起動できなくなりました。

MySQL

原因は、MySQL 5.5 からサーバ側の文字コードの表記が変わっていたのに、古い書き方をしていたせいでした。

1
2
3
4
# service mysqld restart
mysqld を停止中:                                           [  OK  ]
MySQL Daemon failed to start.
mysqld を起動中:                                           [失敗]

解決方法が書かれている記事があったので引用します。新しい文字コードの設定は、character-set-server と書くようです。

私はmy.cnfに以下のように書いていたのが原因のようです。

1
2
3
4
[mysqld]
default-character-set=utf8
[mysql]
default-character-set=utf8

クライアントであるmysql側の設定は良いのですが、サーバー側はmysql5.5から表記が変わったようです。新しい書き方は

1
2
3
4
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8

となります。

引用元:fedora15 mysql5.5 default-character-setが原因で起動できない – ITとともに生きよう

以上、MySQL で default-character-set=utf8 を記述後、起動できなくなる問題を解決した、現場からお送りしました。