ハマログ

株式会社イーツー・インフォの社員ブログ

OPTIMIZE TABLE / MySQL

OPTIMIZE TABLEは次のような機能です

[引用元] 12.5.2.5. OPTIMIZE TABLE 構文
http://dev.mysql.com/doc/refman/5.1/ja/optimize-table.html

InnoDB テーブルに対しては、 インデックス統計とクラスタされたインデックス内の使用されていないフリー スペースを更新する為にテーブルを復元する ALTER TABLE に OPTIMIZE TABLE がマップされます。

MySQLのコマンドラインから大量のレコードをテーブルへ登録し、その一部を削除します
その後、そのテーブルへレコードを更新や登録するアプリケーションを実行するということを行います
このような操作を行った時に、アプリケーションの処理時間が増加することがあります
このような場合にOPTIMIZE TABLEを実行すると改善することがあります

[引用元] 大人のためのInnoDBテーブルとの正しい付き合い方。
http://nippondanji.blogspot.jp/2010/09/innodb.html

少し話がそれてしまったが、OPTIMIZEが必要になるのはどういう時だろうか?簡単にいうと、「行をDELETEのして無駄な領域がたくさん生じたとき」だけである。これによって、利用されていない領域が回収されることになる。そして、フラグメンテーションが解消するわけである。

バックアップの復帰や削除運用など、大量のデータをテーブルに投入や削除することがあるときは、OPTIMIZE TABLEを実行することを頭の片隅に置いておくと
いいことあるかもしれませんね

なんとも歯切れの悪いエントリーでした :P

DBmysqlsqlデータベース

  桑原 光昭   2013年9月8日


関連記事

clmtrackr – JavaScriptだけで顔識別が出来る

顔識別はもはや難しい作業ではなくなります。オープンソースの力で、JavaScri…

QAエンジニア向けイベントに行ってきました!

どうもーyasuです~ 寒くなりました。コートを用意しないとー まず一つご報告。…

XAMPPのphpMyAdminを最新版にアップグレード

XAMPP for WindowsのphpMyAdminを最新版にアップデートす…


← 前の投稿

次の投稿 →