MySQL Too many connections报错

MySQL 时不时出现Too many connections报错,重启MySQL就好了 但是过段时间又出现

一、解决方案:

1.修改mysql最大连接数

set global max_connections=500;

 以上是修改立即生效的,重启MySQL就会还原回去

在MySQL配置文件修改

max_connections = 400

修改完之后,重启MySQL就会永久生效 

2.设置wait_timeout和interactive_timeout

set global wait_timeout=500;

set global interactive_timeout =500;

 上面这个是修改立即生效的,重启MySQL就会还原回去

wait_timeout = 300
interactive_timeout = 300

 修改完之后,重启MySQL就会永久生效 

二、wait_timeout和interactive_timeout的区别

官网解释:https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html

interactive_timeout = 28800 wait_timeout = 28800 #这两个参数默认都是28800s,即8个小时; interactive_timeout指的是mysql在关闭一个交互的连接之前所要等待的秒数 wait_timeout指的是mysql在关闭一个非交互的连接之前所要等待的秒数 通过mysql客户端连接数据库是交互式连接,通过jdbc连接数据库是非交互式连接 https://www.cndba.cn/hbhe0316/article/22633https://www.cndba.cn/hbhe0316/article/22633

如果设置过大,则可能会产生大量的sleep进程,如果设置过小,可能会产生如下错误:

mysql> show variables like 'interactive_timeout';
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id:    2
Current database: *** NONE ***


1.查看默认值

mysql> show variables like 'interactive_timeout';
+---------------------+-------+
| Variable_name       | Value |
+---------------------+-------+
| interactive_timeout | 28800 |
+---------------------+-------+
1 row in set (0.01 sec)

mysql> show variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout  | 28800 |
+---------------+-------+
1 row in set (0.00 sec)


2.根据生产经验需要将该参数设置为300,也就是5分钟

[root@mysql57 ~]# cat /etc/my.cnf | grep timeout
wait-timeout = 300
interactive_timeout = 300
[root@mysql57 ~]# service mysqld restart
Shutting down MySQL.... SUCCESS! 
Starting MySQL... SUCCESS! 
mysql> show variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout  | 300   |
+---------------+-------+
1 row in set (0.00 sec)

mysql> show variables like 'interactive_timeout';
+---------------------+-------+
| Variable_name       | Value |
+---------------------+-------+
| interactive_timeout | 300   |
+---------------------+-------+
1 row in set (0.00 sec)
  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值