ブログリトライ

初心に戻って運営するブログです

MySQLのデータファイルが壊れたら(MyISAM)

[ERROR] Got error 134 when reading table './データベース名/テーブル名'

こんなエラーが出てたらデータファイルが破損してるので、myisamchkコマンドで修復する。

myisamchk --silent --force --fast --update-state -O key_buffer=64M \
-O sort_buffer=64M -O read_buffer=1M -O write_buffer=1M \
/path/to/datadir/*/*.MYI

こんな感じでエラーのあるデータファイルを修復してくれる。それでもおかしな場合は

myisamchk -o /path/to/datadir/*/*.MYI

これでより高度な修復ができる。

もちろんMySQLを止めて作業すること。