InnoDB: ошибка операционной системы номер 23 в файловой операции

Вчера мой локальный жесткий диск сервера вылетает и запускается для автоматического сканирования при запуске. Я не был в офисе, поэтому я действительно не знаю, что случилось. Но сегодня, когда мы запускаем сервер, мы получаем

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'.

Я пытаюсь запустить Scandisk на C: и он нашел 4 поврежденных записи, но нет плохого сектора или что-то в этом роде. Сервер баз данных имеет около 300 баз данных, я не уверен, как его восстановить. Кто-то предлагает удалить файлы журнала и попытаться установить

innodb_Force_recovery = 4 

Я тоже так пытаюсь, но некоторые базы данных недоступны, и при попытке их использования происходит сбой MySql. Я не уверен, так как перезагрузка 300 базы данных не легкая работа.

Редактировать:

Я нахожусь на Windows 2008 Web Edition, если это имеет значение.

1 ответ

У меня та же проблема, но ошибка указывает на другой файл:

InnoDB: имя файла.\ Ib_logfile0

Удаление (или переименование) обоих файлов журнала из каталога данных (.\ Ib_logfile0 и.\ Ib_logfile1) решает проблему для меня.

Похоже, вы в Windows: ошибка ENFILE в основном говорит о том, что у вас слишком много открытых файлов. Не совсем уверен, как именно вы обойдете это: в общем, это где-то между 512 и 2048 в процессе.

Может предложить переместить все файлы из каталога данных MySQL и попытаться восстановить их один за другим.

Другие вопросы по тегам