MySQL の InnoDB テーブルの空き領域は INFORMATION_SCHEMA.TABLES の DATA_FREE カラムで確認でき、ALTER TABLE <テーブル名> ENGINE INNODB で断片化(フラグメンテーション)を解消することができる。なお、テーブルの断片化でI/O量が増えて性能劣化するのはフルテーブルスキャンで、インデックススキャンは影響を受けない。 前提 MySQL 5.6 InnoDB 確認方法 select table_schema, table_name, data_free, table_rows from information_schema.tables where table_name='テーブル名'; 例 テーブルを作成してデータをロードする $ sysbench /usr/share/sysbench/oltp_read_write.