解决mysql配置文件my.cnf添加max_connections不生效

时间:2022-10-02 21:41:12

问题描述

最新为了方便测试,通过mysql官方指定的yum源安装了mysql5.6.40,在向mysql的配置文件my.cnf添加max_connections=3600后,重启mysql后发现不生效,但是如果通过交互端的命令行可以设定,比较不放心,还是网络搜寻一番,终得解决。

 

测试环境

centos7.x / mysql 5.6.40

 

测试发现

如果通过官方给定的yum源安装:

max_connection默认值 在my.cnf中最大可调值 命令行set方式
151 214 正常期望值


 如果通过官方的下载的rpm包安装: 

max_connection默认值 在my.cnf中最大可调值 命令行set方式
151 正常期望值 正常期望值

 此次发现就测试了这两种方法,可能比较局限,但以下设定也能解决当前问题。

 

解决办法

如果采用的是yum源安装,至少需要修改一个地方:

①添加LimitNOFILE=65535至mysql服务文件mysqld.service中的[Service]段下面必选项):

~]# echo "LimitNOFILE = 65535" >>  /usr/lib/systemd/system/mysqld.service
~]# systemctl  daemon-reload
~]# vim /etc/my.cnf    // 添加max_connections = 期望值
~]# systemctl  restart  mysqld

 

②在系统级别修改mysql打开最大文件数(非必选项,最好修改)

在/etc/security/limits.conf末尾添加以下两行(需要reboot):

mysql hard nofile 65535
mysql soft nofile 65535

 然后就可以在my.cnf中修改较大值的max_connections了

 

结束.