相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  ...  /  如何检查 MyISAM 表的错误

9.6.2 如何检查 MyISAM 表的错误

要检查 MyISAM 表,请使用以下命令

  • myisamchk tbl_name

    这可以找到 99.99% 的错误。它无法找到的错误是 涉及数据文件的损坏(这种情况非常少见)。如果要检查表,通常应运行不带选项或使用 -s(静默)选项的 myisamchk

  • myisamchk -m tbl_name

    这可以找到 99.999% 的错误。它首先检查所有索引条目是否存在错误,然后读取所有行。它会计算行中所有键值的校验和,并验证该校验和是否与索引树中键的校验和匹配。

  • myisamchk -e tbl_name

    这将对所有数据进行完整而彻底的检查(-e 表示 扩展检查)。它会对每行的每个键进行检查读取,以验证它们是否确实指向正确的行。对于具有多个索引的大型表,这可能会花费很长时间。通常,myisamchk 在找到第一个错误后停止。如果要获取更多信息,可以添加 -v(详细)选项。这将导致 myisamchk 继续运行,最多显示 20 个错误。

  • myisamchk -e -i tbl_name

    这与上一条命令类似,但 -i 选项告诉 myisamchk 打印其他统计信息。

在大多数情况下,只需使用不带任何参数(表名除外)的简单 myisamchk 命令就足以检查表。