Ubuntu: 12.04 LTS (Linux mysql02 3.2.0-40-generic # 64-Ubuntu SMP จ. 25 มี.ค. 25 21:22:10 UTC 2013 x86_64 x86_64 x86_64 GNU / Linux)
MySQL: Ubuntu distro 5.5.31
Apparmor: ถูกลบ!
เซิร์ฟเวอร์ใช้งานหนักแน่นมานานกว่าหนึ่งปี จากนั้น 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
และเพื่อแสดงให้เห็นถึงข้อ จำกัดconfigทำงาน:
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
เรานิ่งงันและลงทั้งหมด ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก