Posted in MySQL onApril 19, 2022
发现问题
最近使用mysql5.7的时候连接公司系统数据库时发现提示报错,出现mysql too many connection 的异常。经过查询发现是mysql的系统自带的连接数太小,连接的线程超过系统配置导致出现错误。
解决过程
1. 首先登录mysql终端,输入show variables like max_connections,查看最大连接数。
修改最大连接数:set GLOBAL max_connections=1000,配置好之后再次查看最大连接数的量。
2. 超过连接数的原因,是mysql的连接数保持时间太长。可以修改一下保活机制show global variables like 'wait_timeout' ,就是最大睡眠时间。
修改一下 set global wait_timeout=300; 自动杀死线程。
3. 刚刚的配置是临时修改,重启mysql会失效。可以通过修改mysql的配置/etc/my.cnf。
group_concat_max_len = 10240
# 最大睡眠时间
wait_timeout=300
# 超时时间设置
interactive_timeout = 500
修改完毕后,重启mysql5.7即可。
在任务管理器找到MySQL,右键重新启动。
mysql限制最大连接数的原因
原因时因为底层的linux操作系统把进程可以打开的文件句柄数限制为1024了,导致mysql最大连接数时214
总结
到此这篇关于MySQL提示“too many connections“错误解决的文章就介绍到这了!
解决MySQL报“too many connections“错误
- Author -
心诚则灵'- Original Sources -
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@