myisamchk supports the following options for table checking operations:
--check,-cCheck 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,-eCheck 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 thekey_buffer_sizevariable 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,-FCheck only tables that haven't been closed properly.
--force,-fDo a repair operation automatically if myisamchk finds any errors in the table. The repair type is the same as that specified with the
--recoveror-roption.--information,-iPrint informational statistics about the table that is checked.
--medium-check,-mDo 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.--read-only,-TDo 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,-UStore 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.