MySQLのInnoDBが壊れて書き込みができなくなった!?


InnoDBの修復した!と思いきや、修復はできてなかった・・・
MySQLのエラログには、

★ログ [/var/log/mysqld.log]

InnoDB: A new raw disk partition was initialized or
InnoDB: innodb_force_recovery is on: we do not allow
InnoDB: database modifications by the user. Shut down
InnoDB: mysqld and edit my.cnf so that newraw is replaced
InnoDB: with raw, and innodb_force_... is removed.

★SQLエラー

#1030 - Got error -1 from storage engine 

と出ており、参照(select)はできるが、更新(update)ができない状態だった・・・

よくよく調べれば、何やらInnoDBはクセというか制約が多いみたい・・・
まあちょっとしたウェブならMyISAMでも問題ないので、ストレージエンジンを変更することにした!

データをdumpでsqlで取り出し、
そのsqlの「CREATE TABLE」にある「ENGINE」を「InnoDB」から「MyISAM」へ置換!

[SQL]
–) ENGINE=InnoDB DEFAULT CHARSET=utf8;
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
[/SQL]

※もしくは「ALTER TABLE」にて
[SQL]
ALTER TABLE TABLE_NAME ENGINE=MyISAM;
[/SQL]

それをインポートする事で変換完了!
問題解決!!!

一つの戦いに終止符を打った!^^)・・・ハズ…

スポンサードリンク

コメント

タイトルとURLをコピーしました