MySQL 5.5以降で文字コードの指定方法が一部変わっていた
新しく契約したサーバにはMySQL5.6を導入しました。
MySQLの設定ファイル、/etc/my.cnfを編集して、さぁ立ち上げようと思ったらMySQLが起動しない。
いじった箇所は文字コードの設定とスローログの設定。
文字コードからまずは調べてみようと公式ドキュメントを観てみると、以下の記述がありました。
サーバーの起動時に文字設定を指定します。
サーバーの起動時に文字セットおよび照合順序を選択するには、
… 一部省略 …
オプションファイルでオプションを指定するには、次の行を含めます。
123 [mysqld]character-set-server=utf8collation-server=utf8_general_ci
どうやら変わったようです。さらに調べてみるとMySQL 5.5から変わったようですね。
MySQL 5.1の場合(5.5より前のバージョン)
1 2 |
[mysqld] default-character-set=utf8 |
MySQL 5.5以降の場合
1 2 |
[mysqld] character-set-server=utf8 |
なお、[mysql]や[client]といった箇所での文字コードの設定はMySQL 5.1の場合も5.5以降でも変わらず、以下のようにします。
1 2 3 4 5 |
[mysql] default-character-set=utf8 [client] default-character-set=utf8 |
統一していたのに変わってしまったことには理由があると思いますが、今回は深追いしません。
設定を正しくすることでMySQLサーバは起動しました!
本当、マニュアルが充実していてありがたい限りです。
言い忘れました。今回MySQLを導入したサーバはさくらインターネットのVPSサーバです。
管理画面も使いやすくてオススメです!