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 @   香吧香  阅读(3312)  评论(0编辑  收藏  举报
编辑推荐:
· 聊一聊 C#异步 任务延续的三种底层玩法
· 敏捷开发:如何高效开每日站会
· 为什么 .NET8线程池 容易引发线程饥饿
· golang自带的死锁检测并非银弹
· 如何做好软件架构师
阅读排行:
· 欧阳的2024年终总结,迷茫,重生与失业
· 在 .NET 中使用 Tesseract 识别图片文字
· Bolt.new 30秒做了一个网站,还能自动部署,难道要吊打 Cursor?
· 史上最全的Cursor IDE教程
· 关于产品设计的思考
点击右上角即可分享
微信分享提示