之前自建MySQL很多次出现过连接数满了,进而连不上数据库的情况,于是对连接数的参数配置做出了调整,设置到了9000以上,很长一段时间后,发现连接数一直都是4190。。。
于是找到了个解决方案。 vi /usr/my.cnf 回车;打开文件后按“i”键进入编辑状态; 在“[mysqld]”下面添加“max_connections=6000”,按Esc键进入命令模式,输入“:wq”回车(保存并退出)。
重启服务器。 使用 show variables like '%max_connections%'; 发现只有4190个连接数
总结: 排除是my.cnf路径不对的问题,可能是系统限制了文件打开数量,主要是改这2个地方: 在 /etc/security/limits.conf 底部增加2行
mysql hard nofile 65535
mysql soft nofile 65535
在 /usr/lib/systemd/system/mysqld.service 找到 LimitNOFILE 或者底部增加1行
LimitNOFILE=65535
于是这段配置顺理成章地被悄悄加到了服务器初始化脚本里面。