mysqlcheckとは
mysqlcheckは、MySQLのテーブルメンテナンス、修復を行なうことができる。
内部的には、CHECK, ANALYZE, REPAIR, OPTIMIZEのコマンドを利用して作業を行なう。
また、MySQLを稼働しているときに、実行することができる。
1. check(テーブルのエラーチェック)
- オプション
-c, --check
テーブルエラーを確認する
- 全データベースを確認する場合
# mysqlcheck -c -u root -p --all-databases
- sampleデータベースのみを確認する場合
# mysqlcheck -c sample -u root -p
2. analyze(テーブルの分析)
- オプション
-a, --analyze
テーブルを分析する
- 全データベースを確認する場合
# mysqlcheck -a -u root -p --all-databases
- sampleデータベースのみを確認する場合
# mysqlcheck -a sample -u root -p
3. optimize(テーブルの最適化)
- オプション
-o, --optimize
テーブルを最適化する
- 全データベースを確認する場合
# mysqlcheck -o -u root -p --all-databases
- sampleデータベースのみを確認する場合
# mysqlcheck -o sample -u root -p
4. repair(テーブルの修復)
- オプション
-r, --repair
一意ではないユニークキー以外のすべてを修正できる修復を実行する
--auto-repair
確認されたテーブルが壊れていた場合、自動的に修復
- 全データベースを修復する場合
# mysqlcheck -r -u root -p --all-databases
- sampleデータベースのみを修復する場合
# mysqlcheck -r sample -u root -p
- エラーチェックと修復を組み合わせて実行する場合
mysqlcheck --auto-repair -c -o sample -u root -p
結果
OKが出てくることを確認して、完了