Задавайте вопросы, мы ответим
Вы не зашли.
Столкнулись с проблемой возникшей после скачка электричества, повреждена структура базы данных и из-за этого не запускается сервер. Выставляли в конфиге force recovery, как-будто не видело даже этой строчки, не хочет запускаться. Значения уже все перепробовали.
База нужная, бекапов увы нужной давности нету...
Пробовали поступить как этот человек http://www.digincore.org/index.php/blog … -file-read , увы всё застопорирось на 6ом шаге, ошибка осталась, сервер не стартует.
Кто-нибудь сталкивался с такой ситуацией?
Неактивен
Нужны логи запуска со включенным innodb_force_recovery, иначе бесполезно. Ну и уровень recovery тоже напишите, пожалуйста.
Неактивен
innodb_force_recovery=6
Отредактированно Лёха (13.04.2015 19:23:05)
Неактивен
Выглядит плохо
Я бы делал так:
1. Сделал бэкап, чтобы было, куда откатиться
2. Проверил, что в my.cnf написаны осмысленные значения для размеров ibdata*
3. Поискал бы страничку из дампа на диске. В ней заменил бы, соответственно,
ссылки 2100038922:1667781743 -> 0:206 (страничка все равно битая, но следующая
ссылка будет в пределах ibdata). Число 0x7D2C0D0A (2100038922) встречается
несколько раз, возможно, придется заменить все (опять же — в пределах страницы,
остальные страницы не трогать).
4. Попробовать запустить и смотреть, где упадет дальше
Ну и никакой гарантии восстановления, конечно.
Неактивен
Собственно напрашивается вопрос, а как можно просмотреть содержимое ibdata? чтобы поменять 206 страницу? Текстовым редактором просматриваем, файл большой, какие-то значения есть на фоне иероглифов.
Неактивен
Эм. Любой hex-редактор подойдет. Я использую bvi, можно что-то с менее экзотическими
клавишами типа beye.
Наверное, я тогда недостаточно подробно расписал. Смотрите, тут нет никакой гарантии
вообще, это скорее ощущения и интуиция, я не представляю, сколько там можно так копать,
и приведет ли к чему-либо.
Про редакторы: числа, которые написаны в логе, нужно перевести в шестнадцатеричный
вид (вместо 2100038922:1667781743 получится 7D2C0D0A:6368546F), в редакторе нужно
искать именно их. Ну и заменять на, соответственно, 00000000:000000CE.
Неактивен