DBAtlas · データベース運用アトラス

1194: Table 'name' is marked as crashed and should be repaired(テーブル 'name' がクラッシュとしてマークされ修復が必要)

MySQL

意味

通常 MyISAM エンジン (MariaDB では Aria も) で格納されたテーブルが破損/クラッシュとしてマークされ、修復されるまで使用できない。テーブルにアクセスするクエリはこのエラーで失敗する。

原因

突然のサーバークラッシュ/電源喪失、ディスク満杯、ハードウェア障害、または mysqld プロセスの強制終了の際に MyISAM テーブルが正常にクローズされなかった。MyISAM はトランザクションもクラッシュ安全性も提供しないため、InnoDB よりもはるかに頻繁に発生する。

対処方法

テーブルを修復する: REPAIR TABLE table_name; またはオフラインで myisamchk -r。修復前に必ずデータファイルをバックアップする。恒久対策としてテーブルを InnoDB に移行する: ALTER TABLE my_table ENGINE=InnoDB; これによりクラッシュセーフになる。ディスクの健全性と myisam_recover_options の設定を確認する。

DBAtlas で開く →

同じデータベースの他の項目