mysql,如何解决too many connections的连接数问题?
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
连接mysql
服务器的时候,报错: Too many connections
。这个问题该如何解决呢?本文将提出解决mysql
连接数问题的可能解决方案。
苏南大叔的“程序如此灵动”博客,记录苏南大叔的编程经验文章。本文测试环境:win10
,mysql@5.7.26
。
连接数问题
这个Too many connections
的本质问题是:数据库的连接数问题。mysql
数据库能够提供的连接数默认是100
,不能满足实际的数据库连接数。所以,解决问题的方向就两个:
- 增加能够提供的连接数数量设置。
- 减少实际的数据库链接,及时断开无用的链接。
实际测试中可以发现:也并不是严格的遵守这个值,比如上图设置为3,实际上开了5个连接后,才提示too many connections
。
sql
修改连接数【临时】
选项是max_connections
,可以通过sql
语句来查找:
show variables like '%max_connections%';
可以通过下面的sql
进行临时设置。但是,重启mysql
服务之后,这个最大连接数选项就又变回去了。所以,意义也不是很大。
set global max_connections=3;
注意:这个重启失效!
配置文件修改连接数【永久】
也可以在my.cnf
里面查找,参考文章:
永久修改连接数的办法,也是修改my.cnf
。
my.cnf
配置文件位置
这个位置根据系统的不同,也有很多不同的位置。但是,可以统一使用下面的命令进行查看:
mysql --help|grep my.cnf
苏南大叔的测试环境里面,上述命令的返回值是:
C:\Windows\my.ini
C:\Windows\my.cnf
C:\my.ini
C:\my.cnf
E:\tools\phpstudy_pro\Extensions\MySQL5.7.26\my.ini
E:\tools\phpstudy_pro\Extensions\MySQL5.7.26\my.cnf
在对应的配置文件里面,修改max_connections
配置项即可。如下图所示:
在windows
环境下,可以通过下面的方式,安装grep
命令:
相关文章
总之,增加“max_connections”选项设置,就可以在一定程序上解决Too many connections
的问题。然而,这个连接数的上限设置也要符合主机的实际硬件情况。所以,究竟设置为多少比较合适呢?这就需要经验值或者工具来测量了。
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。