myisamchk supports the following options for table checking operations:
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.
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-checkand have plenty of memory, setting the
key_buffer_sizevariable to a large value helps the repair operation run faster.
See also the description of this option under table repair options.
For a description of the output format, see Section 188.8.131.52, “Obtaining Table Information with myisamchk”.
Check only tables that haven't been closed properly.
Do a repair operation automatically if myisamchk finds any errors in the table. The repair type is the same as that specified with the
Print informational statistics about the table that is checked.
Do a check that is faster than an
--extend-checkoperation. This finds only 99.99% of all errors, which should be good enough in most cases.
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.
Store information in the
.MYIfile to indicate when the table was checked and whether the table crashed. This should be used to get full benefit of the
--check-only-changedoption, but you shouldn't use this option if the mysqld server is using the table and you are running it with external locking disabled.