SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 10.05.2009 13:23:57

traveler
Участник
Зарегистрирован: 06.02.2008
Сообщений: 17

Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

Подскажи пжаста, как вылечить ошибку не потеряв при этом саму БД???
вот лог сервера:

090510 13:19:38  InnoDB: Operating system error number 23 in a file operation.
InnoDB: See http://dev.mysql.com/doc/mysql/en/InnoDB.html
InnoDB: for installation help.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/mysql/en/Opera … codes.html
InnoDB: File name c:\MySQL\innodb\ibdata1
InnoDB: File operation call: 'Windows aio'.
InnoDB: Cannot continue operation.

Помогите кто может, кто может помогите!!!

Неактивен

 

#2 10.05.2009 14:43:10

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

$ perror 23
OS error code  23:  Too many open files in system

см. http://sqlinfo.ru/forum/viewtopic.php?id=1414

Неактивен

 

#3 12.05.2009 22:45:53

traveler
Участник
Зарегистрирован: 06.02.2008
Сообщений: 17

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

rgbeast написал:

$ perror 23
OS error code  23:  Too many open files in system

см. http://sqlinfo.ru/forum/viewtopic.php?id=1414

так вроде в этом посте про ошибку 24, в ней действительно про невозможность открыть файлы, а ошибка 23 - это File table overflow, подскажите как ее вылечить, я бьюсь 2 сутки, не могу ни чего сделать... Заранее благодарен за помощь.... Очень прошу помощи!!!

Неактивен

 

#4 13.05.2009 17:28:11

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

Опишите, пожалуйста, проблему поподробнее. Начиная с «почему 23 = file table overflow», ну и
что делаете, что не работает?

Если просто при соединении — скорее всего, у Вас закончились дескрипторы. Поставьте переменную
open_files_limit и перезапустите сервер (SET GLOBAL не достаточно, Вы упираетесь не во внутреннее
число MySQL, а в ulimit системы).

Неактивен

 

#5 13.05.2009 21:26:09

traveler
Участник
Зарегистрирован: 06.02.2008
Сообщений: 17

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

Версия MySQL 4.0.26
mysqld-max-nt

при старте сервера, после 3-4 секунд, сервер останавливается, в файле COMP_NAME.err
появляется лог, следующего содержания:

13:00:39  InnoDB: Operating system error number 23 in a file operation.
InnoDB: See http://dev.mysql.com/doc/mysql/en/InnoDB.html
InnoDB: for installation help.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/mysql/en/Opera … codes.html
InnoDB: File name c:\MySQL\innodb\ibdata1
InnoDB: File operation call: 'Windows aio'.
InnoDB: Cannot continue operation.

исходя из лога, видно, что сообщение ОС не дает нормально работать серверу MySQL
иду по сслыке приведенной в логе -  http://dev.mysql.com/doc/mysql/en/Opera … codes.html
и только теперь, сорри, читаю таблицу ошибок для Windows, еще раз извиняюсь, но от этого не легче - Ошибка Данных CRC #23 (cyclic redundancy check)

т.к. у меня сервер MySQL стоит на ОС Windows XP Pro...

может что посоветуете, как восстановить БД, очень важные данные!!! Помогите пожалуйста!!!

Неактивен

 

#6 14.05.2009 16:13:56

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

Я обычно смотрю на исходники, там может быть понятнее
http://msdn.microsoft.com/en-us/library/ms681382(VS.85).aspx

Впрочем, там добавляются лишь два слова — data error. Ничего хорошего. Диск побился?

InnoDB можно запустить в режиме «игнорировать ошибки» параметром --innodb-force-recovery.
Настоятельно рекомендую прочитать http://dev.mysql.com/doc/refman/5.1/en/ … overy.html
перед использованием.

После запуска с этим параметром нужно сделать полный бэкап данных (mysqldump -A проще
всего), проверить диск на плохие сектора, пересоздать tablespace в хороших секторах
и загрузить туда бэкап.

Неактивен

 

#7 14.05.2009 21:38:55

traveler
Участник
Зарегистрирован: 06.02.2008
Сообщений: 17

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

innodb_force_recovery = 6
только в таком режиме сервер не падает после 3-4 секунд работы, но при этом размер всех таблиц 1кБайт и в них нет ни одной записи... в любых других вариантах от 0 до 5, сервер не работает, выдает все туже ошибку 23 (CRC)...

Диск целый, не один встроенный в ОС или сторонний тест, не выдает бедов...

Что можно еще придумать?

Неактивен

 

#8 15.05.2009 13:39:21

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Сервер MySQL выдает ошибку "InnoDB: Operating system error number 23 in a file operation"

Очень-очень плохо.

Давайте отсюда копать в двух направлениях smile

1. Направление «попытаться восстановить данные».
Можете попробовать натравить InnoDB hot backup. Триалки должно хватить.

2. Направление «попытаться восстановить систему».
Если система говорит, что бэдов нет, то файлики должны читаться. Попробуйте
скопировать все файлы ib*, *.frm и настройки MySQL на другую машинку (с сохранением
каталогов), и попробуйте запустить это там.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson