MySQL can't opet file(errno:24)

有的时候,数据库跑得好好的,突然报不能打开数据库文件的错误了。

解决思路:

首先我们要先查看数据库的 error log。然后判断是表损坏,还是权限问题。还有可能磁盘空间不足导致的不能正常访问表,操作系统的限制也要关注下,相关应用限制也要关注下;

1
2
3
#ulimit -n 查看系统的最大打开文件数
[root@mysql-150 ~]# ulimit -n
65535

查看数据库的打开文件数

1
2
3
4
5
6
7
mysql> show variables like 'open_files_limit';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| open_files_limit | 5000  |
+------------------+-------+
# 根据业务实际情况修改打开文件数一般足够用了,低版本的打开文件数,可能有点小, 注意一下

哪就是其他的问题了,可能是表的权限,也可能是表出问题,根据错误日志,具体分析  

处理方法

  • repair table tablename

  • chown mysql.mysql 权限 目录

  • 清理磁盘中的垃圾数据

posted on 2025-02-13 08:33  数据与人文  阅读(24)  评论(0)    收藏  举报