您的当前位置:首页 --> MYSQL教程 --> 总结MySQL修改最大连接数的两个方式
MYSQL教程   总结MySQL修改最大连接数的两个方式
浏览次数:479 关键词 ( )
查看使用该CPU的产品 查看CPU天梯
CPU型号:总结MySQL修改最大连接数的两个方式
主频:Ghz
睿频:Ghz
核心数:个
不支持超核心
制作工艺:
插槽类型:
功耗:0W
L3缓存:0MB
支持最大内存: 0GB
 
CPU详细参数

问题

在使用MySQL数据库的时候,经常会遇到这么一个问题,就是“Can not connect to MySQL server. Too many connections”-mysql 1040错误,这是因为访问MySQL且还未释放的连接数目已经达到MySQL的上限。通常,mysql的最大连接数默认是100, 最大可以达到16384。

常用的有两种方式修改最大连接数。

解决方式一:通过命令

可以通过 set GLOBAL max_connections=100; 命令将最大连接数设置为100,此方法是即时生效的,不需要重启mysql服务。如下图所示:

需注意的是,要通过root权限的mysql帐号才能操作,否则会报“1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation”的错误。

同时,从上图也可以看出,设置max_connections最小值为1。

设置完成后,我再通过另一个终端连接时,就报出了如下的错误提示:1040-Too many connections

解决方式二:修改my.cnf

打开mysql的配置文件vim /etc/my.cnf,加入max_connections=100一行(如果有,直接修改值即可),然后重启服务:/etc/init.d/mysqld restart,此时生效。

区别:

1.通过修改配置文件,需要重启服务;而用命令修改,即时生效。

2.采用修改配置文件的方式,更稳定可靠。因为如果配置文件中有max_connections=100,再去用命令修改的话,一旦重启mysql服务后,会重新以配置文件中指定的连接数为准。

总结:

在修改最大连接数的时候会有这样一个疑问—这个值是不是越大越好,或者设置为多大才合适?这个参数的大小要综合很多因素来考虑,比如使用的平台所支持的线程库数量(windows只能支持到2048)、服务器的配置(特别是内存大小)、每个连接占用资源(内存和负载)的多少、系统需要的响应时间等。可以在global或session范围内修改这个参数。连接数的增加会带来很多连锁反应,需要在实际中避免由此引发的负面影响。希望本文大家使用mysql有所帮助。

下一个产品 SQL计算timestamp的差值的方法
上一个产品 MySQL数据库下用户及用户权限配置

拥有超过10年的业务管理经验。我们是IDC服务和解决方案方面的专家

有任何疑问请不要犹豫,立即点击联系我们