チップス
MySQLの最適化 コマンド
MySQL データベースのテーブルを最適化する方法について調べました。
MyISAMは最適化されますが、innoDBは最適化されません。
どうしてもinnoDBの最適化が必要なら、一度、mysqldumpで出力したものをインポートし直す必要があります。
だそうです....。
- SQL文で最適化する場合、'OPTIMIZE TABLE テーブル名'で最適化できます。
- コマンドで最適化する場合、「mysqlcheck -o -uユーザー名 -pパスワード データベース名」で最適化されます。
- 全データベースを最適化する場合、「mysqlcheck -A -o -uroot -prootパスワード」で最適化されます。
cronを使ってMySQLデータベースの最適化を行う
#!/bin/sh
/usr/bin/mysqlcheck -o -r --all-databases -uUsername -pPASSWORD
このスクリプトのパーミッションに実行権限を与えて cron で実行時間を指定する。