mysql too many connections 解决

本文为博主原创,转载请注明出处:

  由于在开发过程中,很多人连接共同一个数据库,在工具连接到mysql, 并执行sql时,提示 too many connections ,这是由于数据库连接太多,以致于连不上。

  1.通过命令查看数据库配置的最大连接数:说明:数据库默认配置的最大连接数为151

mysql> show variables like '%max_connections%';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| max_connections        | 151   |
+------------------------+-------+

 

  2.查看当前数据库的连接数:

show processlist;
mysql> show processlist;
+----+------+-----------------+-------------+---------+------+----------+------------------+
| Id | User | Host            | db          | Command | Time | State    | Info             |
+----+------+-----------------+-------------+---------+------+----------+------------------+
|  3 | root | localhost:65229 | NULL        | Sleep   |  333 |          | NULL             |
|  4 | root | localhost:65233 | user_center | Sleep   |  332 |          | NULL             |
|  5 | root | localhost:65238 | user_center | Sleep   |  329 |          | NULL             |
|  6 | root | localhost:65303 | user_center | Sleep   |  289 |          | NULL             |
|  7 | root | localhost:49155 | user_center | Sleep   |   43 |          | NULL             |
|  8 | root | localhost:49159 | user_center | Query   |    0 | starting | show processlist |
+----+------+-----------------+-------------+---------+------+----------+------------------+
6 rows in set

 

  3.修改数据库最大连接数:

    set GLOBAL max_connections=2000;

mysql> set GLOBAL max_connections=2000;
Query OK, 0 rows affected

    

  4. 也有另外一种方法,修改 mysql 的 配置文件my.ini ,将 max_connections 设置为自己需要的连接数。

    但此种方法修改完配置文件,需要重新启动 mysql,会造成很大的不便。建议还是使用命令进行设置。

 

  此处将本地 mysql 的配置文件 my.ini 内容记录一下,可看下mysql 配置文件中的配置项有哪些:

  

[mysqld]
character-set-server=utf8
#绑定IPv4和3306端口
bind-address = 0.0.0.0
port = 3306
sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
default_storage_engine=innodb
innodb_buffer_pool_size=1000M
innodb_log_file_size=50M
# 设置mysql的安装目录
#C:\Program Files\MySQL\MySQL Server 8.0
basedir=D:\Program Files\MySQL\MySQL Server 8.0
# 设置mysql数据库的数据的存放目录
#D:\installProgrammer\Mysql\data
datadir=D:\installProgrammer\Mysql\data
# 允许最大连接数
max_connections=1000
# skip_grant_tables
[mysql]
default-character-set=utf8
[mysql.server]
default-character-set=utf8
[mysql_safe]
default-character-set=utf8
[client]
port = 3306
#C:\Program Files\MySQL\MySQL Server 8.0\lib\plugin
plugin-dir=C:\Program Files\MySQL\MySQL Server 8.0\lib\plugin

 

 

 

 

 

 

  

 

posted @ 2021-01-01 11:10  香吧香  阅读(3024)  评论(0编辑  收藏  举报