Mysql连接数太多ERROR 1040 (HY000): Too many connections

Posted 每天1990

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql连接数太多ERROR 1040 (HY000): Too many connections相关的知识,希望对你有一定的参考价值。

数据库连接报错:ERROR 1040 (HY000): Too many connections
 

1、查看连接数

/usr/local/mysql/bin/mysqladmin -h host -u root -p123456 status
 
这条命令返回MYSQL当前状态的几个值
Uptime: 18869  Threads: 1  Questions: 1  Slow queries: 0  Opens: 33  Flush tables: 1  c: 0  Queries per second avg: 0.000
Uptime:是mysql正常运行的时间。
Threads:指开启的会话数吧。
Questions: 服务器启动以来客户的问题(查询)数目  (应该是只要跟mysql作交互:不管你查询表,还是查询服务器状态都问记一次)。
Slow queries:按字面意思是慢查询的意思,不知道musql认为多久才足够算为长查询,这个先放着。
Opens:服务器已经打开的数据库表的数量
Flush tables: 服务器已经执行的flush ...、refresh和reload命令的数量。
open tables:通过命令是用的数据库的表的数量,以服务器启动开始。
 Queries per second avg:select语句平均查询时间?
 
2、更改配置文件的连接数
配置文件一般存在位置:/etc/my.cnf
修改项:[mysqld]下增加max_connections(最大连接数)和wait_timeout(连接等待时间)
[mysqld]
max_connections=5000
wait_timeout=5
 
3、停止和启动服务
停止mysql服务:
/usr/local/mysql/bin/mysqladmin shutdown -uroot-p123456
 
启动mysql服务:
/usr/local/bin/mysqld_safe --defaults-file=/etc/my.cnf--user=root
 
说明: 
--defaults-file为指定的配置文件
--user为登录mysql的用户名
 
4、重启成功后,登录mysql去kill连接数
进入命令行:./mysql -uroot -p123456
查看连接信息:
mysql> show processlist;
 
Host列为所以连接过来的信息,Id为对应的标识,可以kill掉
mysql> kill 1;
 

以上是关于Mysql连接数太多ERROR 1040 (HY000): Too many connections的主要内容,如果未能解决你的问题,请参考以下文章

Mysql连接数不够(报错连接数太多)

已解决mysql连接出错:ERROR 1040 (HY000): Too many connections

Go连接MySql数据库Error 1040: Too many connections错误解决

分析 MySQL 表给出 ERROR 1040 - Too many connections

Python(1040,“连接太多”)

PDOException: SQLSTATE[08004] [1040] 连接太多