MySQL提示“too many connections”的解决办法

今天Linux测试环境服务扩容后 登录MySQL时提示 "too many connections",第一时间考虑服务链接数量过多导致无法登录,先停掉部分链接服务,后重新登录MySQL成功。

1、登录成功后命令查看MySQL链接信息:show processlist; 

MySQL提示“too many connections”的解决办法_第1张图片

2、查看MySQL连接列表,停掉没必要的服务连接进程:kill 进程号(列表第一列ID就是数据库连接进程号)

3、原因分析

产生这种问题的原因是:

连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout  都有关系。wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。

解决方法:

修改MySQL配置文件/etc/my.cnf,设置成max_connections=1000,wait_timeout=5。如果没有此项设置可以自行添加,修改后重启MySQL服务即可。要不经常性报此错误,则要对服务器作整体性能优化

总结,解决问题的最终方法:

1.修改配置文件/etc/my.cnf,调整连接参数

2.检查程序代码,对于没有关闭的链接及时进行关闭

你可能感兴趣的:(mysql,Linux)