MySQLにおけるOPTIMIZE TABLEの仕組み
OPTIMIZE TABLE
は、「行をDELETE
して無駄な領域がたくさん生じたとき時だけで良い」と聞きました。
http://nippondanji.blogspot.jp/2010/09/innodb.html
例えばDELETE
とINSERT
が同数頻繁に行われ、行数が一定な新陳代謝の高いテーブルがあるとします。この時、OPTIMIZE TABLE
は必要あるでしょうか?
DELETE
によって生じた無駄な領域がINSERT
によって新しい行に上書きされるのか、OPTIMIZE TABLE
するまで永遠に使用可能にならないのか、あるいはそれ以外なのかよく分からず、こういう疑問が出ました。