今回のお題は相当、マニアックです。
読み飛ばして下さい。覚書です。
MySQLも5.1から5.5にアップデート。すると起動出来なくなってびっくりしたと言うお話。
MySQLが起動できなくなってしまいました。
# service mysqld start
MySQL Daemon failed to start.
Starting mysqld: [FAILED]
再起動してもずっとエラーが出るので、
ログを調べてみる
tail /var/log/mysqld.log
結論から言うと、my.cnf に無効な記述があったために立ち上がらなかった
対策
my.cnf の見直し
5.5ではこれまで使われていたいくつかのシステム変数やSQL文、サーバオプションが使えなくなっています。これらが設定ファイルに存在するとエラーで起動出来なくなっています。
また、メモリ節約のために「–skip-innodb」を設定してInnoDBを使わない設定にしている方は多いと思いますが、MySQL 5.5 からは単体でこれを設定すると以下のようにエラーになります。
[ERROR] Unknown/unsupported storage engine: InnoDB
[ERROR] Aborting
ではInnoDBを使用しないようにするにはどうするかというと、以下のようにmy.cnfに設定します。
skip-innodb
default-storage-engine=MyISAM
または、
skip-innodb
default-storage-engine=MyISAM
5.5からはInnoDBがデフォルトになっているため、innoDBを止めちゃうと何使ったら良いのか分からなくなるようです。
最近のコメント