1、环境:
ubuntu 16.04 x86_64 GNU/Linux
mysql 5.7.19-0ubuntu0.16.04.1 (Ubuntu)
2、永久修改ulimit中的max file open限制
2.1、查看系统可以设置的打开的最大文件数
cat /proc/sys/fs/file-max
2.2、查看系统定义的默认限制值
ulimit -a
2.3、开始修改
打开:sudo vi /etc/sysctl.conf
编辑:fs.file-max = 4096
执行:sudo sysctl -p
打开:sudo vi /etc/security/limits.conf
编辑:
* soft nproc 4096
* hard nproc 4096
* soft nofile 4096
* hard nofile 4096
打开:sudo vi /etc/pam.d/common-session
编辑:session required pam_limits.so
注销ubuntu,登录后执行:ulimit -n
3、mysql配置
3.1、查看mysql当前打开文件数
show global status like 'open%';
3.2、查看mysql配置的最大打开文件数
show global variables like '%open%';
无敌分界线
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
上面的根本没用!!!
mkdir /etc/systemd/system/mysql.service.d
vim /etc/systemd/system/mysql.service.d/limits.conf
[Service] LimitNOFILE=10000 LimitMEMLOCK=10000
systemctl daemon-reload
systemctl restart mysql
mysql> show global variables like '%open%';
感谢Google:
无法为Ubuntu 15中的Mysql max连接增加max_open_files