我有mysql ver.5.1.49-3,我正在使用linux debian.我试图将open-files-limit设置为65535.所以我在/ etc/mysql /中编辑了te my.cnf
[mysqld]
open_files_limit = 65535
[mysqld_safe]
open_files_limit = 65535
Run Code Online (Sandbox Code Playgroud)
然后在/etc/security/limit.conf中
* soft nofile 100000
* hard nofile 200000
Run Code Online (Sandbox Code Playgroud)
重新启动mysql服务后,我在linux中运行此命令
ps -ef|grep mysql
Run Code Online (Sandbox Code Playgroud)
我得到了65535.当我以root身份登录mysql并获取open-files-limit的值时
show global variables like "%open_files_limit%";
Run Code Online (Sandbox Code Playgroud)
我得到1024.请帮忙.
min*_*nni 13
如果使用systemd启动mysql,则此设置很重要:
在文件中,/lib/systemd/system/mysql.service您必须[Service]在末尾的部分中添加以下两行:
LimitNOFILE = infinity
LimitMEMLOCK = infinity
Run Code Online (Sandbox Code Playgroud)
在重新启动systemctl和mysql之后:
systemctl daemon-reload
/etc/init.d/mysql restart
Run Code Online (Sandbox Code Playgroud)
要检查配置是否有效,您可以从运行的mysql进程获取参数,如下所示:
cat /proc/$(pgrep mysqld$)/limits | grep files
Run Code Online (Sandbox Code Playgroud)