Rechercher dans le manuel MySQL
15.11.5 Reclaiming Disk Space with TRUNCATE TABLE
To reclaim operating system disk space when
truncating an
InnoDB
table, the table must be stored in its
own .ibd file. For a table to
be stored in its own .ibd
file, innodb_file_per_table
must
enabled when the table is created. Additionally, there cannot be a
foreign key constraint
between the table being truncated and other tables, otherwise the
TRUNCATE TABLE
operation fails. A foreign key
constraint between two columns in the same table, however, is
permitted.
When a table is truncated, it is dropped and re-created in a new
.ibd
file, and the freed space is returned to
the operating system. This is in contrast to truncating
InnoDB
tables that are stored within the
InnoDB
system tablespace
(tables created when innodb_file_per_table=OFF
)
and tables stored in shared
general
tablespaces, where only InnoDB
can use
the freed space after the table is truncated.
The ability to truncate tables and return disk space to the
operating system also means that
physical backups can
be smaller. Truncating tables that are stored in the system
tablespace (tables created when
innodb_file_per_table=OFF
) or in a general
tablespace leaves blocks of unused space in the tablespace.
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-innodb-truncate-table-reclaim-space.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.