如果通过修改my.cnf 的方式不起作用,一般是和系统有关系。试试下面的方法,修改文件:
append these two lines to /etc/security/limits.conf
mysql hard nofile 65535
mysql soft nofile 65535
append this line to /usr/lib/systemd/system/mysqld.service (in the [service] section)
LimitNOFILE=65535
then finally reboot and check that those error messages have disappeared from your mysql error log.
I would not recommend to edit the original systemd file as it will be overwritten during updates.
To modify the limits, do the following:
mkdir /etc/systemd/system/mysqld.service.d
Inside that directory, create new file limits.conf and add the following to that file:
[Service]
LimitNOFILE = 65535
finally reload systemd with:
systemctl daemon-reload
and restart mysqld to enable the change:
systemctl restart mysqld
Now validate that the change was successful by using the following query:
mysql> show variables like '%file%';
You should find a line like this:
| open_files_limit | 65535
That's it, this way your changes survive MySQL updates.