一些系统级因素会以主要方式影响性能:
如果您有足够的 RAM,您可以删除所有交换设备。某些操作系统在某些情况下使用交换设备,即使您有空闲内存也是如此。
避免对
MyISAM
表进行外部锁定。默认情况下禁用外部锁定。和 选项显式启用--external-locking
和--skip-external-locking
禁用外部锁定。只要您只运行一台服务器,禁用外部锁定不会影响 MySQL 的功能。请记住在运行myisamchk之前关闭服务器(或锁定并刷新相关表) 。在某些系统上,必须禁用外部锁定,因为无论如何它都不起作用。
唯一不能禁用外部锁定的情况是当您 在同一数据上 运行多个 MySQL服务器(而不是客户端)时,或者如果您运行myisamchk来检查(而不是修复)表而不告诉服务器首先刷新和锁定表. 请注意,通常不 建议使用多个 MySQL 服务器并发访问相同的数据,除非使用 NDB Cluster。
LOCK TABLES
and 语句 使用UNLOCK TABLES
内部锁定,因此即使禁用了外部锁定也可以使用它们。