0%

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

问题

新增项目环境,通过mysql官方指定的yum源安装了mysql5.6.43,由于项目启动提示too many connections,于是修改mysql的配置文件my.cnf添加max_connections=1000后,重启mysql后发现不生效,但是如果通过交互端的命令行可以更改生效。

解决方案

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

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

1
2
3
4
~]# 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):

1
2
mysql hard nofile 65535
mysql soft nofile 65535

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