MySQLで、PostgreSQL でいうところの「vacuumdb」がないかと探しました。コマンド mysqlcheck で似たようなことができるようです。(作成 2010/11/14)
BM10777 / Pixabay
1.シンタックス
# mysqlcheck -uroot --auto-repair --optimize --all-databases
オプションは下記を参照ください。
7.11. mysqlcheck — テーブル メンテナンスと修復プログラム
http://dev.mysql.com/doc/refman/5.1/ja/mysqlcheck.html
2.定期実行
# crontab -e
MAILTO=送信先メールアドレス 0 5 * * * /usr/bin/mysqlcheck -uroot --auto-repair --optimize --all-databases -s
オプションに「-s」とつけるところがポイントです。
異常のあったテーブルのみメール通知してくれます。
以上