MySQL 连接数过多的处理方法合集 - Too many connections

Posted 蒋川_卡拉云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 连接数过多的处理方法合集 - Too many connections相关的知识,希望对你有一定的参考价值。


碰到Can not connect to mysql server. Too many connections”-mysql错误着实令人抓狂。这基本等于失去了对 MySQL 的控制权。本教程将详细讲解多种处理此错误的方法。

sudo mysql -uroot -p
ERROR 1040 (00000): Too many connections

本教程将分这几个来讲解

  • 此类错误的原因。
  • 如何查看 MySQL 连接状态。
  • 限制超时时间的方法,缩短 sleep 时间,使系统更快回收连接。
  • 修改配置文件中最大连接数的方法,保证连接畅通。
  • 火线救援法,不用重启,不用登录 MySQL,即可修改最大连接数。
  • 提前布局,给 root 预留好连接通道。

由于文章过长,本文仅是摘要,点这里《MySQL 连接数过多的处理方法合集 》查看全文


一. 错误原因

出现 MySQL 连接数过多有多种情况,多数是因为mysql_connect ,没有 mysql_close; 当sleep连接占满最大连接数max_connections时,会导致 Too many connections 错误。

MySQL 默认最大连接数max_connections为 151,其实 MySQL 还给 root 留了多一个通道,真正的最大连接数为max_connections + 1 。但实际工作中因为各种原因,这个 1 也有可能被占用。这时,我们无法通过登录 MySQL 调整参数的方法来处理这个错误。

二. 查看当前 MySQL 连接情况

我们可以使用 SHOW PROCESSLIST; 查看前 100 条连接。

SHOW PROCESSLIST;

也可以使用 SHOW full PROCESSLIST; 查看所有连接。

SHOW full PROCESSLIST;

上图中 ID 15 的连接 我们可以看到它已经 11388s

>> 有关 MySQL连接数过多的处理方法,点这里继续浏览 <<

以上是关于MySQL 连接数过多的处理方法合集 - Too many connections的主要内容,如果未能解决你的问题,请参考以下文章

阿里云RDS报错:Too many connections

Postgres 连接数过多 psql: FATAL: sorry, too many clients already

MySQL报错[Error] MySQL establishment of connection, message from server Too many connection

mysql too many connections 解决方法

MySQL 数据库报错 Too many connections

MySQL出现too many connections(1040)错误解决方法