一、问题报错
can’t open file (errno:24)
打不开数据库文件
二、解决思路
- 首先我们要先查看数据库的 error log。然后判断是表损坏,还是权限问题。还有可能磁盘空间不足导致的不能正常访问表;操作系统的限制也要关注下;用 perror 工具查看具体错误!
linux:/usr/local/mysql/bin # ./perror 24
OS error code 24: Too many open files
- 超出最大打开文件数限制!ulimit -n 查看系统的最大打开文件数是 65535,不可能超出!那必然是数据库的最大打开文件数超出限制!
- 在 MySQL 里查看最大打开文件数限制命令:show variables like ‘open_files_limit’;
- 发现该数值过小,改为 2048,重启 MySQL,应用正常。
三、处理办法
repair table ;
chown mysql 权限
清理磁盘中的垃圾数据