Error:Too-many-connections

打开网站显示: Error:Too many connections

  • 如何解决此问题?
  • 如何知道当前连接?
  • 如何模拟重现情况?

处理记录: 当时 service restart mysql 无法重启, ctrl+c 好像关闭. 后面又出现Connection refused(准备重启防火墙-未重启) 同事发现是硬盘满 删除后重启服务暂时恢复正常

如何解决问题?

1) 直接重启数据库. service restart mysql killall mysql
2) 修改连接数, mysql默认为100个.

重启数据库修改最大连接数: 修改my.cnf调大max_connections

不重启数据库修改最大连接数: 用过gdb直接修改mysqld内存中max_connections

[root ~]$ gdb -p $(cat /data/mysql-5.5/localhost.localdomain.pid) -ex "set max_connections=500" -batch  
-bash: gdb: command not found
[root ~]$ yum install gdb -y

如何查看数据库连接数?

连接进入数据库后 mysql> show processlist;
主动断开其连接: mysql> kill [id];

如何模拟重现?

把max_connections调小到4

mysql> set global max_connections=4;
mysql> show variables like 'max_connec%';

然后打开几个seesion连接mysql, 当连接超出4个时, 报以下错误:

[root ~]$ mysql -uroot -p123456 -S /data/mysql-5.5/mysql.sock
ERROR 1040 (HY000): Too many connections

ks

系统磁盘空间不足导致的.

搜索资料

msyql 提示too many connections
解决Too many connections问题 | 在Percona5.5的thread_pool里面提供了2个参数extra_port和extra_max_connections预留额外的连接,预防连接满了以后我们无法进入数据库进行相应的管理.(percona的线程池的性能) 文章的percona5.5与mysql是什么关系?

发表评论