MySQL Error number: MY-013831; Symbol: ER_IB_MSG_TRYING_TO_OPEN_FILE_FOR_LONG_TIME; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释 Error number: MY-013831; Symbol: ER_IB_MSG_TRYING_TO_OP…

文档解释

Error number: MY-013831; Symbol: ER_IB_MSG_TRYING_TO_OPEN_FILE_FOR_LONG_TIME; SQLSTATE: HY000

Message: Trying to open a file for %lld seconds. Configuration only allows for %zu open files. Consider setting innobase_open_files higher.

错误说明:

ER_IB_MSG_TRYING_TO_OPEN_FILE_FOR_LONG_TIME这是MySQL中一个错误号,表明当MySQL实例尝试打开一个文件时出现了问题。这个错误状态指示MySQL因索引文件尝试操作失败而失败/出错。它是由InnoDB存储引擎报告的。

常见案例

当MySQL实例无法访问索引文件时,可能会引发此错误。这通常是由MySQL实例在操作时间超过指定的时间之后(即设置默认值)造成的,或者由于某些活动(例如,重新启动MySQL服务器,系统断电导致MySQL数据库不可用)导致索引文件变得不可用,或者由于硬件上的一些故障,系统上的磁盘无法存取文件而导致索引文件无法访问。当MySQL试图打开一个文件,而文件并不存在,无效或已损坏时,也可能会引发此错误。

解决方法:

1. 针对指定时间问题,一般而言,可以通过增加MySQL服务器的wait_timeout系统变量来解决这个问题。

2. 如果MySQL无法访问文件,检查MySQL的data_dicectory路径权限是否正确,这可能是由于系统文件权限问题导致的,因此将data_directory更改为具有管理员特权的用户或组可能可以帮助解决这个问题。

3. 检查MySQL的磁盘IO是否可以正常访问,而不是由于操作系统内核导致文件访问失败,如果磁盘控制器存在问题,可以尝试更换或重新安装磁盘控制器。

4. 如果MySQL无法访问文件,因为文件被另一个MySQL实例打开,此时,必须关闭此MySQL实例,然后等待,就可以重新启动MySQL服务器,此时索引文件可以再次打开,从而避免难以解决的ER_IB_MSG_TRYING_TO_OPEN_FILE_FOR_LONG_TIME 异常。

5. 检查错误日志,以查看哪个文件无法打开,并确定该文件是有效的,并且仲裁/系统资源作出了正确的响应。

6. 尝试删除损坏的索引文件,并重新添加到数据库中,以恢复正常状态,这样就可以避免出现ER_IB_MSG_TRYING_TO_OPEN_FILE_FOR_LONG_TIME异常。

香港美国云服务器首选港服(Server.HK),2H2G首月10元开通。
港服(Server.HK)(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

为您推荐

港服(Server.HK)MongoDB教程:MongoDB 索引

MongoDB 索引 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件...

港服(Server.HK)PostgreSQL教程PostgreSQL 别名

PostgreSQL 别名 我们可以用 SQL 重命名一张表或者一个字段的名称,这个名称就叫着该表或该字段的别名。 创建...

港服(Server.HK)Memcached教程:Memcached stats 命令

Memcached stats 命令 Memcached stats 命令用于返回统计信息例如 PID(进程号)、版本号...

港服(Server.HK)Redis教程:Redis 数据类型

Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集...

港服(Server.HK)Redis教程:Redis GEO

Redis GEO Redis GEO 主要用于存储地理位置信息,并对存储的信息进行操作,该功能在 Redis 3.2 ...
返回顶部