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;
 
原文地址:https://www.cnblogs.com/meitian/p/9093107.html