Mysql 報錯 [Server] Error in accept: Too many open files


查看Mysql日志/var/log/mysqld.log,有如下報錯:

2019-05-28T15:08:16.325376Z 0 [ERROR] [MY-010283] [Server] Error in accept: Too many open files

Mysql版本:

# mysql -V 
mysql Ver 8.0.15 for Linux on x86_64 (MySQL Community Server - GPL)

 

CentOS Linux 7 (Core)

解決方法:

查看當前Mysql數據庫設置的open_files_limit值:
mysql> show variables like '%open%';

查看當前Mysql運行狀態下的Open_files值:
mysql> show status like '%opene%';

 

1.  Change system open file limit on the fly(dynamically). 先修改服務器,修改open files限制為65535.
# ulimit -n 65535
# ulimit -Hn
65535
# ulimit -Sn
65535
# ulimit -n
65535
# ulimit -a

2. Change Mysql open file limit
vi /usr/lib/systemd/system/mysqld.service
LimitNOFILE=65535
LimitNPROC=65535

vi /usr/lib/systemd/system/mysqld.service
# Sets open_files_limit
LimitNOFILE = 65535

vi /etc/security/limits.conf
mysql hard nofile 65535
mysql soft nofile 65535

# vi /etc/systemd/system/multi-user.target.wants/mysqld.service
# Sets open_files_limit
LimitNOFILE = 65535

4.  Reload and Restart Mysqld to take effect.
systemctl daemon-reload && systemctl restart mysqld

 

重啟后確認設置生效
mysql> show variables like '%open%';


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM