第5章:数据库管理 / 5.9. 备份与恢复 / 5.9.4. 表维护和崩溃恢复

后面几节讨论如何使用myisamchk来检查或维护MyISAM(对应.MYI.MYD文件的表)

你可以使用myisamchk实用程序来获得有关你的数据库表的信息或检查、修复、优化他们。下列小节描述如何调用myisamchk(包括它的选项的描述),如何建立表的维护计划,以及如何使用myisamchk执行各种功能。

尽管用myisamchk修复表很安全,在修复(或任何可以大量更改表的维护操作)之前先进行备份也是很好的习惯

影响索引的myisamchk操作会使ULLTEXT索引用full-text参数重建,不再与MySQL服务器使用的值兼容。要想避免,请阅读5.9.5.1节,“用于myisamchk的一般选的说明。

在许多情况下,你会发现使用SQL语句实现MyISAM表的维护比执行myisamchk操作要容易地多:

·         要想检查或维护MyISAM表,使用CHECK TABLEREPAIR TABLE

·         要想优化MyISAM表,使用OPTIMIZE TABLE

·         要想分析MyISAM表,使用ANALYZE TABLE

可以直接这些语句,或使用mysqlcheck客户端程序,可以提供命令行接口。

这些语句比myisamchk有利的地方是服务器可以做任何工作。使用myisamchk,你必须确保服务器在同一时间不使用表。否则,myisamchk和服务器之间会出现不期望的相互干涉。