今天早上,MySQL突然无法提供服务了,心想,昨天晚上没有关机啊,怎么回事?
于是去查询日志看看,
sudo tail /usr/local/mysql/data/lryouweitang.local.err
看到了这么一句
2022-04-08T01:33:56.084810Z 0 [Warning] File Descriptor 1049 exceeded FD_SETSIZE=1024
从日志可以发现,是mysql打算持有的文件描述符数量超过了系统的限制。
修改下面两个参数
table_open_cache
sudo vim /etc/my.cnf
在 [mysqld]
节点改成下面的数组,因为我的系统现在是1024,所以只要比1024小就可以,我这里设置为512。
[mysqld] table_open_cache=512
重启,解决。
sudo /usr/local/MySQL/support-files/mysql.server stop sudo /usr/local/MySQL/support-files/mysql.server start