InnoDB:文件操作中的操作系统错误号23

时间:2013-05-23 05:59:14

标签: mysql innodb recovery

昨天,我的本地服务器硬盘崩溃并在启动时转为自动scandisk。我不在办公室,所以我真的不知道发生了什么。但是今天当我们启动Server时,我们正在获取

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网络版上。

2 个答案:

答案 0 :(得分:1)

听起来像是在Windows上:ENFILE错误基本上说你有太多打开的文件。不确定你是如何解决它的:in general it is somewhere between 512 and 2048 in a process

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

答案 1 :(得分:0)

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

  

InnoDB:文件名。\ ib_logfile0

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