- 问题描述:
项目现场最近运行长时间报数据库连接超时,没发现发现对系统产生影响,但是长久下去是个隐患。 问题排查:
从mysql的连接数入手,首先查询当前使用过的最大连接数:
打开要查询的数据库,输入查询语句
show global status like ‘Max_%’
可以看到查询结果 Max_used_connections 的 value值为 1001
也就说连接数最大是使用数达到了 1001在查询 Mysql的最大连接数是多少:
show variables like ‘max_c%’可以看到查询结果 max_connection 的值为 1000
从值上看,明显是连接数不足了,已经超出了一条,所以我们可以根据公式算一个合理的出来
最理想的连接数为:
Max_used_connections / max_connections * 100% ≈ 85%1001/1160 *100%=86%
那么我们就将最大连接数设置为 1160
设置的方法,不推荐在命令行修改,因为此方法在Mysq服务重启时将会回归初始化状态
- 问题解决:
找到MySQL的配置文件 My.ini
查询max定位到 max_connections
修改其值为 max_connections=1160
保存文件后,重启Mysql服务即可。