MySQL性能参数详解之Skip-External-Locking参数介绍
程序员文章站
2024-02-22 09:11:47
mysql的配置文件my.cnf中默认存在一行skip-external-locking的参数,即“跳过外部锁定”。根据mysql开发网站的官方解释,external-lo...
mysql的配置文件my.cnf中默认存在一行skip-external-locking的参数,即“跳过外部锁定”。根据mysql开发网站的官方解释,external-locking用于多进程条件下为myisam数据表进行锁定。
如果你有多台服务器使用同一个数据库目录(不建议),那么每台服务器都必须开启external locking;
参数解释
当外部锁定(external-locking)起作用时,每个进程若要访问数据表,则必须等待之前的进程完成操作并解除锁定。由于服务器访问数据表时经常需要等待解锁,因此在单服务器环境下external locking会让mysql性能下降。所以在很多linux发行版的源中,mysql配置文件中默认使用了skip-external-locking来避免external locking。
当使用了skip-external-locking后,为了使用myisamchk检查数据库或者修复、优化表,你必须保证在此过程中mysql服务器没有使用需要操作的表。如果没有停止服务器,也至少需要先运行
复制代码 代码如下:
mysqladmin flush-tables
命令,否则数据表可能出现异常。
参数使用说明
如果是多服务器环境,希望打开external locking特征,则注释掉这一行即可
复制代码 代码如下:
# skip-external-locking
如果是单服务器环境,则将其禁用即可,使用如下语句
复制代码 代码如下:
skip-external-locking
注意事项
在老版本的mysql中,此参数的写法为:
复制代码 代码如下:
skip-locking
如果在新版本mysql配置中依然使用此写法,则可能出现:
[warning] ‘–skip-locking' is deprecated and will be removed in a future release. please use ‘–skip-external-locking' instead.
错误。
推荐阅读
-
MySQL性能参数详解之Skip-External-Locking参数介绍
-
MySQL性能参数详解之Max_connect_errors 使用介绍
-
MySQL性能参数详解之Skip-External-Locking参数介绍
-
MYSQL入门学习之十八:MYSQLADMIN命令参数详解_MySQL
-
MYSQL入门学习之十六:MYSQL命令参数详解_MySQL
-
MySQL性能调优之explain参数详解
-
MySQL8新特性之全局参数持久化详解
-
MYSQL入门学习之十八:MYSQLADMIN命令参数详解_MySQL
-
MYSQL入门学习之十六:MYSQL命令参数详解_MySQL
-
MySQL参数详解之 Max_connect_errors