断片化したレコードを結合したり、レコードの削除または更新によって発生した無駄なスペースを除去するには、myisamchk をリカバリモードで実行します。
shell> myisamchk -r tbl_name
同様に、SQL の OPTIMIZE
TABLE
ステートメントを使用して、テーブルを最適化することもできます。OPTIMIZE
TABLE
はテーブルの修復とキー分析を行い、さらにインデックス
ツリーをソートして、キー走査の処理速度を上げます。また、OPTIMIZE
TABLE
を使用した場合、サーバ側ですべての処理を行うため、ユーティリティとサーバ間で不要なやり取りが発生しません。項12.5.2.5. 「OPTIMIZE TABLE
構文」
を参照してください。
myisamchk には、テーブルのパフォーマンスを向上させるオプションが数多くあります。
--analyze
, -a
--sort-index
, -S
--sort-records=
,
index_num
-R
index_num
利用可能なオプションの詳細に関しては、項7.4. 「myisamchk — MyISAM テーブル メンテナンス ユーティリティ」 を参照してください。