10bet网址
MySQL 5.6リファレンスマニュアル
下载本手册

14.10.5 truncate tableによるディスク領域の再利用

InnoDBテ,ブルを切り捨てるときにオペレ,ティングシステムのディスク領域を再利用するには,そのテ,ブルが独自の.ibdファ@ @ルに格納されている必要があります。独自の.ibdファルに格納されるテブルの場合は,そのテブルを作成するときにinnodb_file_per_tableを有効にする必要があります。さらに,切り捨てられるテ,ブルとその他のテ,ブルの間に外部キ制約が存在していてはいけません。そうしないと,截断表操作は失敗します。ただし、同じテ、ブル内の2のカラム間の外部キ、制約は許可されます。

テ,ブルが切り捨てられると,そのテ,ブルが削除されて新しい.ibdファ@ @ル内に再作成され,解放された領域はオペレ@ @ティングシステムに返されます。これは,InnoDBシステムテ,ブルスペ,ス内に格納されているInnoDBテブル(innodb_file_per_table =了のときに作成されるテブル)の切り捨てとは対照的です。この場合は,そのテ,ブルが切り捨てられたあと,解放された領域はInnoDBしか使用できません。

テ,ブルを切り捨て,そのディスク領域をオペレ,ティングシステムに返す機能はまた,物理バックアップを小さくすることもできます。システムテ,ブルスペ,スに格納されているテーブル (innodb_file_per_table =了のときに作成されるテーブル)の切り詰めでは,未使用領域のブロックがシステムテーブルスペース内に残されます。