Mysql Too many connections 解决办法(linux)

原因:
  mysql配置参数中设定的并发连接数太少或者系统繁忙导致连接数被占满。
  连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout 都有关。
  wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。

解决方式:线上修改 + 配置文件修改(配置文件是为了mysql重启时生效)

1、线上修改(重启之后会恢复为默认)
设置等待超时时间

set global wait_timeout=120;

设置交互超时时间

set global  interactive_timeout=300;

设置最大链接数(一般500-1000合理)

set global max_connections=1000;

2、配置文件修改(mysql重启时读取)
打开 /etc/my.cnf ,添加如下几行

max_connections=1000
wait_timeout=120
interactive_timeout=300

Mysql Too many connections 解决办法(linux)

下边是查看配置参数和运行线程

查看哪些线程正在运行

show full processlist;

Mysql Too many connections 解决办法(linux)

查看链接数配置

show global variables like '%CONNECTIONS%';

Mysql Too many connections 解决办法(linux)
查看超时时间配置

show global variables like '%timeout%'; 

Mysql Too many connections 解决办法(linux)

上一篇:web之django的序列化器汇总


下一篇:EF 如何更新多对多关系的实体