MySQL - InnoDB エンジンが起動しない場合!

Updated:


MySQL はデフォルトでは InnoDB エンジンが有効化されます。 個人で使用するには InnoDB エンジンでも不便はありませんが、より高速に処理させたい場合などに MyISAM エンジンに変更したりします。 デフォルトで MyISAM エンジンが有効になるように設定ファイル(my.cnf or my.ini)に

default-storage-engine=MyISAM

と記述したりしていると思います。

トランザクション処理が使えたり使えなかったり、更新処理がテーブル単位になったりレコード単位になったり、使い方によって一長一短です。

そして、MySQL インストール後に InnoDB エンジンから MyISAM エンジンに変更した場合などには、MySQL サーバ起動時に以下のようなエラーメッセージが出力される場合があります。

120617 15:11:08 [ERROR] Plugin 'InnoDB' init function returned error.
120617 15:11:08 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

InnoDB エンジンが使えないようです。 MyISAM エンジンを使うのだから InnoDB は使えなくても良いのですが、気持ち悪いので対処します。 ※InnoDB エンジンだけが起動せず MySQL 自体は起動する場合です。MySQL も起動しない場合は他にも原因があるかも知れません。

作業記録

0. 前提条件

MySQL サーバのバージョンは 5.5 系を想定しています。 5.2 系は未確認です。

1. 対処方法

MySQL のデータディレクトリ配下にある ib_logfile* ファイルを削除してから MySQL を起動すればよいです。 ただそれだけです。 InnoDB エンジンを全く使用しないのなら、設定ファイル(my.cnf or my.ini)に以下のように追記しおけば、InnoDB エンジンは起動時に有効になりません。

skip-innodb
# または
innodb=OFF

以上です。





 

Sponsored Link

 

Comments