우분투 : 12.04 LTS (Linux mysql02 3.2.0-40 제네릭 # 64- 우분투 SMP 월요일 3 월 25 일 21:22:10 UTC 2013 x86_64 x86_64 x86_64 GNU / Linux)
MySQL : 우분투 배포판 5.5.31
복장 : 제거되었습니다!
서버는 1 년 넘게 견실 히 운영되고 있습니다. 그런 다음 월요일에 MySQL이 실패하기 시작했습니다. 업데이트로 문제가 발생하여 문제를 파악할 수 없습니다. 심지어 MySQL 5.5.30으로 롤백하려고 시도했지만 운이 없습니다. 우리는 5.5.31에 돌아 왔습니다.
MySQL 오류 로그 항목 :
130430 7:55:46 [ERROR] Error in accept: Too many open files
130430 7:55:46 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/fclvod.frm' (errno: 24)
130430 7:55:46 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/fcnote.frm' (errno: 24)
130430 7:55:47 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/ffcont.frm' (errno: 24)
130430 7:55:47 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/ffcontv.frm' (errno: 24)
130430 7:55:47 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/ffnote.frm' (errno: 24)
130430 7:55:47 [ERROR] /usr/sbin/mysqld: Can't open file: './eci_elite_test/frcfcl.frm' (errno: 24)
ulimit 문제가 발생했습니다. APPARMOR을 완전히 제거했습니다. /etc/security/limits.conf를 늘 렸지만 여전히 운이 없습니다 :
# Out of desperation....
* soft nofile 49152
* hard nofile 65536
# No effect!?!!?
#mysql soft nofile 49152
#mysql hard nofile 65536
그리고 limits.conf 가 작동 하고 있음을 보여주기 위해 :
root@mysql02:/etc/security# ulimit -Sa | grep "open files"
open files (-n) 49152
root@mysql02:/etc/security# ulimit -Ha | grep "open files"
open files (-n) 65536
그리고 여기 my.cnf 의 중요한 항목이 있습니다
[mysqld_safe]
open_files_limit = 16384
[mysqld]
open_files_limit = 16384
하나:
root@mysql02:/etc/mysql# mysqladmin -u root -pThePassword variables| grep open_files_limit
open_files_limit | 1024
우리는 완전히 무너졌다. 도움을 주시면 감사하겠습니다.