問題分析
MySQL進程打開文件句柄過多,無法再打開新的文件句柄
問題確認
// 系統單個進程最大文件句柄數量查看
ulimit -n
// 查看某個個進程使用的文件句柄數量
lsof -p ${PID} | wc -l
// 查看MySQL的table_open_cache參數
show variables like "table_open_cache";
// 查看MySQL的open_tables參數
show global status like "open_tables";
解決辦法
// 修改MySQL的table_open_cache參數
// 編輯my.cnf
table_open_cache = 65535
// 編輯/etc/security/limits.conf
#限制單個進程最大文件句柄數(到達此限制時系統報警)
* soft nofile 32768
#限制單個進程最大文件句柄數(到達此限制時系統報錯)
* hard nofile 65536
