myisamchk supports the following options for table checking operations:
--check
,-c
Check the table for errors. This is the default operation if you specify no option that selects an operation type explicitly.
Check only tables that have changed since the last check.
--extend-check
,-e
Check the table very thoroughly. This is quite slow if the table has many indexes. This option should only be used in extreme cases. Normally, myisamchk or myisamchk --medium-check should be able to determine whether there are any errors in the table.
If you are using
--extend-check
and have plenty of memory, setting thekey_buffer_size
variable to a large value helps the repair operation run faster.For a description of the output format, see Section 4.6.3.5, “Obtaining Table Information with myisamchk”.
--fast
,-F
Check only tables that haven't been closed properly.
--force
,-f
Do a repair operation automatically if myisamchk finds any errors in the table. The repair type is the same as that specified with the
--recover
or-r
option.--information
,-i
Print informational statistics about the table that is checked.
--medium-check
,-m
Do a check that is faster than an
--extend-check
operation. This finds only 99.99% of all errors, which should be good enough in most cases.--read-only
,-T
Do not mark the table as checked. This is useful if you use myisamchk to check a table that is in use by some other application that does not use locking, such as mysqld when run with external locking disabled.
--update-state
,-U
Store information in the
.MYI
file to indicate when the table was checked and whether the table crashed. This should be used to get full benefit of the--check-only-changed
option, but you shouldn't use this option if the mysqld server is using the table and you are running it with external locking disabled.