MySQL

MySQLのインデックスを最適化するコマンド

PostgreSQL の運用には散々悩まされた記憶がありますが、MySQL にも最適化の運用コマンドは用意されています。

しかし PostgreSQL ほど頻繁にメンテナンスする必要もなく、変更が多いテーブルでもそこまでシビアにならなくて良さそうです。

MySQLの最適化

MySQL のインデックスの最適化については InnoDB の場合は自動で行ってくれるので意識する必要はありませんが、最適化が行われる条件は決まっているので常に最適化されているわけではありません。

例えば、前回インデックスが更新が行われてから以下のパターンに当てはまった時にインデックスの最適化対象となります。

テーブル行数全体の 1/16 が更新される
20億行以上更新される

最適化を手動実行するコマンド

ちなみに、最適化に使用するコマンドは以下です。

MySQL を長期間運用する場合は、覚えておきたいですね。