myisam_recover_options
システム変数を設定して mysqld を起動した場合、MyISAM
テーブルが正しくクローズされていないまたはクラッシュとマークされていれば、MySQL によって自動的にチェックされ、修復が試行されます。 これが発生した場合、MySQL は hostname.err
ファイルに「警告: テーブル ... をチェックしています」
と書き込み、テーブルを修復する必要がある場合は、「警告: テーブルを修復しています」
がそのあとに書き込まれます。 これらのエラーを多数受け取り、その直前に予期しない mysqld の停止がなかった場合は、何らかの問題があるため、さらに調査する必要があります。
サーバーは、MyISAM
テーブルの破損を検出すると、ソースファイルの名前や行番号、テーブルにアクセスするスレッドのリストなどの追加情報をエラーログに書き込みます。 たとえば、「thread_id=1 からエラーを受け取りました。mi_dynrec.c:368」
です。 これは、バグレポートに含めると役に立つ情報です。
セクション5.1.7「サーバーコマンドオプション」およびセクション5.9.1.7「テーブルが破損した場合のテストケースの作成」も参照してください。