REPAIR [NO_WRITE_TO_BINLOG | LOCAL] TABLE tbl_name [, tbl_name] ... [QUICK] [EXTENDED] [USE_FRM]
REPAIR TABLE
repairs a possibly corrupted table. By default, it has the same effect as
myisamchk --recover tbl_name
or
aria_chk --recover tbl_name
See aria_chk and myisamchk for more.
REPAIR TABLE
works for Archive, Aria, CSV and MyISAM tables. For XtraDB/InnoDB, see recovery modes. For CSV, see also Checking and Repairing CSV Tables. For Archive, this statement also improves compression. If the storage engine does not support this statement, a warning is issued.
This statement requires SELECT and INSERT privileges for the table.
By default, REPAIR TABLE
statements are written to the binary log and will be replicated. The NO_WRITE_TO_BINLOG
keyword (LOCAL
is an alias) will ensure the statement is not written to the binary log.
When an index is recreated, the storage engine may use a configurable buffer in the process. Incrementing the buffer speeds up the index creation. Aria and MyISAM allocate a buffer whose size is defined by aria_sort_buffer_size
or myisam_sort_buffer_size
, also used for ALTER TABLE
.
REPAIR TABLE
is also supported for partitioned tables. However, the USE_FRM
option cannot be used with this statement on a partitioned table.
ALTER TABLE ... REPAIR PARTITION
can be used to repair one or more partitions.
The Aria storage engine supports progress reporting for this statement.
© 2019 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/repair-table/