服务器上总是会出现too many connections,
出现 了就增加连接数量
传统的解决办法
mysql -u root -p;
show variables like '%max_connections%';
show status like 'Max_used_connections';
set gobal max_connections=500;
治标不治本,没过多久,又出现问题了,
查看processlist
SHOW PROCESSLIST;
查看processlist发现有大量状态为“Waiting in connection_control plugin”的等待连接。
连接异常(用户名密码错误)导致connectioncontrol 插件进行拦截,拦截用户身份验证处于 “waiting in connection_control plugin”的链接延迟状态
生成杀死大量waiting连接的命令
select concat('kill ',ID,';')
from information_schema.PROCESSLIST
where Command='Connect' and
STATE='Waiting in connection_control plugin';
将结果复制到mysql命令行,执行就ok了。
问题的根源
然后找发现还会生成状态为“Waiting in connection_control plugin”的等待连接,
经查询对应的Host,原来是自己的一个很旧的服务在一直跑着,但后来mysql密码更改了,造成这个程序一下在重新尝试连接Mysql,,,杀掉它,问题解决。。。