昨天,我的本地服务器硬盘崩溃并在启动时转为自动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网络版上。
答案 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)中删除(或重命名)两个日志文件对我来说解决了这个问题。