Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

9.6.4 MyISAM 表优化

要合并碎片行并消除删除或更新行时产生的空闲空间,请在恢复模式下运行 myisamchk

$> myisamchk -r tbl_name

您也可以使用 OPTIMIZE TABLE SQL 语句来优化表。在同样的方式下,OPTIMIZE TABLE 将执行表修复和键分析,并对索引树进行排序,以便加快键查找。使用 OPTIMIZE TABLE 时,不会出现实用程序和服务器之间的不良交互,因为服务器执行所有工作。请参阅 第 15.7.3.4 节,“OPTIMIZE TABLE 语句”

myisamchk 还有许多其他选项,可以用来提高表的性能:

  • --analyze-a:执行键分布分析。这可以提高连接性能,因为连接优化器可以更好地选择连接顺序和使用哪些索引。

  • --sort-index-S:对索引块进行排序。这可以优化查找并使使用索引的表扫描更快。

  • --sort-records=index_num-R index_num:根据给定的索引对数据行进行排序。这使您的数据变得更加局部化,并可能加速使用该索引的范围基于 SELECTORDER BY 操作。

有关所有可用选项的完整描述,请参阅 第 6.6.4 节,“myisamchk — MyISAM 表维护实用程序”