要检查MyISAM表,请使用以下命令:
myisamchk tbl_name
发现所有错误的99.99%。它找不到的是仅涉及数据文件的损坏(非常不寻常)。如果要检查表,通常应运行不带选项或带有myisamchk -s(静默)选项的。
myisamchk -m tbl_name
发现所有错误的99.999%。它首先检查所有索引条目是否有错误,然后读取所有行。它计算行中所有键值的校验和,并验证校验和与索引树中键的校验和是否匹配。
myisamchk -e tbl_name
这将对所有数据进行完整而彻底的检查(-e即“ 扩展检查 ”)。它对每一行的每个键进行检查读取,以验证它们确实指向正确的行。对于具有许多索引的大型表,这可能需要很长时间。通常, myisamchk在找到第一个错误后停止。如果要获取更多信息,可以添加-v(详细)选项。这将导致 myisamchk继续运行,最多出现20个错误。
myisamchk -e -i tbl_name
这类似于上一个命令,但是该 -i选项告诉 myisamchk打印其他统计信息。
在大多数情况下,一个简单的myisamchk命令,除了表名外,不带其他参数就足以检查一个表。