myisamchk はテーブルチェック操作用に次のオプションをサポートします。
-
テーブルにエラーがないか確認します。 明示的に操作のタイプを選択しない場合、これがデフォルトの操作です。
-
最後に行われた検査以降に変更されたテーブルのみをチェックします。
-
テーブルチェックを非常に詳細に行います。 テーブルにインデックスが多数ある場合、これには非常に時間がかかります。 このオプションは極端な場合のみに使用するべきです。 通常、myisamchk または myisamchk --medium-check を使用してテーブル内のエラーの有無を確認できます。
--extend-check
を使用し、メモリー容量が十分な場合、key_buffer_size
値を大きくセットすれば、修復操作のスピードを上げることができます。このオプションの説明は、テーブル修復オプションも参照してください。
出力形式の説明は、セクション4.6.4.5「myisamchk によるテーブル情報の取得」を参照してください。
-
正しく閉じられていないテーブルのみを検査します。
-
myisamchk がテーブル内にエラーを発見した場合、自動的に修復操作を実行します。 修復タイプは
--recover
または-r
オプションで指定されるものと同じです。 -
チェックされたテーブルの統計を出力します。
-
--extend-check
操作よりも高速なチェックを実行します。 これはすべてのエラーの 99.99% のみを確認し、ほとんどの場合はこれで十分でしょう。 -
テーブルを検査済みとマークしません。 これは、mysqld が外部ロックが無効の状態で稼働している場合など、ロックを使用しないほかのアプリケーションが使用しているテーブルをチェックするために myisamchk を使用する場合に便利です。
-
情報を
.MYI
ファイルに保存して、テーブルがチェックされた時期およびテーブルがクラッシュしたかどうかを示します。--check-only-changed
オプションの利便性を最大限に引き出すためにはこれを使用するべきですが、mysqld サーバーがテーブルを使用し、かつ外部ロックを無効にした状態で起動している場合は、このオプションを使用しないでください。