MyISAM という非常に巨大な Mysql テーブルがあります。テーブルの最適化コマンドを実行するたびに、テーブルがロックされ、パフォーマンスが影響を受けます。テーブルは読み取り専用ではないため、一時テーブルを作成してそれらを交換してもうまくいかない場合があります。テーブルを分割することもできません。
パフォーマンスを低下させることなく最適化テーブル機能を実現する他の方法/ツールはありますか? どんな提案でも大いに役立ちます。
前もって感謝します。
MyISAM という非常に巨大な Mysql テーブルがあります。テーブルの最適化コマンドを実行するたびに、テーブルがロックされ、パフォーマンスが影響を受けます。テーブルは読み取り専用ではないため、一時テーブルを作成してそれらを交換してもうまくいかない場合があります。テーブルを分割することもできません。
パフォーマンスを低下させることなく最適化テーブル機能を実現する他の方法/ツールはありますか? どんな提案でも大いに役立ちます。
前もって感謝します。
http://dev.mysql.com/doc/refman/5.5/en/optimize-table.html
InnoDB テーブルの場合、OPTIMIZE TABLE はテーブルを再構築する ALTER TABLE にマップされます (...)
したがって、Quassnoi がおそらく示唆しているように、InnoDB への切り替えによる改善は期待できません。
定義上、OPTIMIZE TABLE はテーブルへの排他的アクセスを必要とするため、OPTIMIZE 化中のパフォーマンスが低下します。
それにもかかわらず、テーブルがどのように「巨大」であるかに応じて、OPTIMIZE にかかる時間を短縮するために実行する手順がいくつかある場合があります。