【问题标题】:InnoDB: Operating system error number 23 in a file operationInnoDB:文件操作中的操作系统错误号 23
【发布时间】:2013-05-18 09:05:05
【问题描述】:

昨天,我的本地服务器硬盘崩溃并在启动时进行自动扫描磁盘。我不在办公室,所以我真的不知道发生了什么。但是今天当我们启动服务器时,我们得到了

130523 10:49:36  InnoDB: Operating system error number 23 in a file operation.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html
InnoDB: File name .\ibdata1
InnoDB: File operation call: 'Windows aio'.

我尝试在 C: 上运行 scandisk,它发现了 4 条损坏的记录,但没有坏扇区之类的。数据库服务器有大约 300 个数据库,我不知道如何恢复它。有人建议删除日志文件并尝试设置

innodb_Force_recovery = 4 

我也尝试过,但是当我尝试使用它们时,某些数据库不可用并导致 MySql 崩溃。我不确定重新加载 300 个数据库不是一件容易的事。

编辑:

如果重要的话,我使用的是 Windows 2008 网络版。

【问题讨论】:

    标签: mysql innodb recovery


    【解决方案1】:

    听起来您使用的是 Windows:ENFILE 错误基本上表示您打开的文件太多。不太清楚你是如何绕过它的:in general it is somewhere between 512 and 2048 in a process

    建议可能将所有文件移出 MySQL 数据目录并尝试一一恢复。

    【讨论】:

    • 是的,我在 Windows 2008 上,我刚刚重新启动服务器,并且服务器从过去几年开始就是这样工作的。它从来没有任何问题,但是由于过热[看起来]它昨天的硬盘崩溃了,就是这样。因此,据我了解,它可能是文件系统或 CRC 损坏导致问题。
    【解决方案2】:

    我有同样的问题,但错误指向另一个文件:

    InnoDB:文件名 .\ib_logfile0

    从数据目录(.\ib_logfile0 和 .\ib_logfile1)中删除(或重命名)两个日志文件为我解决了这个问题。

    【讨论】:

    • 嗯,这里没有问题。这是对最初问题的回答。
    猜你喜欢
    • 2012-06-19
    • 1970-01-01
    • 2018-07-09
    • 2014-01-01
    • 2015-03-18
    • 2015-02-28
    • 1970-01-01
    • 2014-05-27
    • 1970-01-01
    相关资源
    最近更新 更多