問題描述:
最新為了方便測試,通過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了
結束.
