mysql skip_external_locking,今天早上遇到的一个新问题skip-external-locking

早上突然接到电话说服务器数据库链接不上,通过服务管理权查看mysl是启动的,但是各个网站都提示无法连接到mysql,通过运行记录看到是有很多mysql叹号警告,其中问题有下面几种:

Forcing close of thread 340739 user:

'root'

Event Scheduler: Purging the queue. 0 events

Normal shutdown

Plugin 'FEDERATED' is disabled.服务 mysql 意外停止

不断试验不断寻求度娘帮助

skip-external-locking – MySQL性能参数详解

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.

先开始在my.ini中增加了skip-locking参数,居然彻底连不上了,删了之后可以启动了,然后日志中提示Please

use ‘–skip-external-locking’

instead.mysql做的就是好啊,后来加了新的参数可以启动了,继续观察

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值