Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Слетела база. Failed to redo a database opertaion / 12 сообщений из 12, страница 1 из 1
22.06.2007, 15:28
    #34614040
Filimonenko Sergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Здравствуйте!

База АСА 9.0.2.3420. Около 40 реплицируемых удаленных баз.(SQLRemote).

Возникла очень печальная проблема:
При выгрузке удаленной базы из консолидированной, подвис процесс на выгрузке какой-то таблицы. Отменил выгрузку, начал заново. После этого сервер выполнил недопустимую операцию... и после этого больше не запустился :(
Выдает следующее:

I. 22/06 14:15:33. Запуск базы данных "is_basa" (D:\BASES\Insurance System\is_basa.db) в Пт 22 Июн 2007 г. 14:15
I. 22/06 14:15:33. Выполняется восстановление базы данных
I. 22/06 14:15:33. Последняя установка контрольных точек в Пт 22 Июн 2007 г. 14:09
I. 22/06 14:15:33. Журнал контрольных точек...
I. 22/06 14:15:33. Системное предупреждение: файл базы данных "D:\BASES\Insurance System\is_basa.db" состоит из 1385 дисковых фрагментов
I. 22/06 14:15:42. Журнал транзакций: is_basa.log...
I. 22/06 14:15:42. Зеркальная копия журнала транзакций: is_basa.mlg
I. 22/06 14:15:42. Запуск контрольной точки "is_basa" (is_basa.db) в Пт 22 Июн 2007 г. 14:15
I. 22/06 14:15:42. Завершение контрольной точки "is_basa" (is_basa.db) в Пт 22 Июн 2007 г. 14:15
E. 22/06 14:15:42. *** ОШИБКА *** Сбой контрольного утверждения: 100904 (9.0.2.3420)
E. 22/06 14:15:42. Failed to redo a database operation (id=4, page_no=0xd0000040, offset=0x296)
I. 22/06 14:15:42. *** ОШИБКА *** Сбой контрольного утверждения: 100904 (9.0.2.3420)
I. 22/06 14:15:42. Failed to redo a database operation (id=4, page_no=0xd0000040, offset=0x296)
I. 22/06 14:15:42.
I. 22/06 14:15:42. Попытка сохранения файла дампа в 'C:\Temp\sa_dump.dmp'
I. 22/06 14:15:42. Файл дампа сохранен
E. 22/06 14:15:42. Внутренняя ошибка базы данных *** ОШИБКА *** Сбой контрольного утверждения: 100904 (9.0.2.3420)
E. 22/06 14:15:42. Failed to redo a database operation (id=4, page_no=0xd0000040, offset=0x296) -- выполнен откат транзакции

Люди, помогите, плиз, разобраться в этой ситуации.
Как я понял восстанавливать ее прийдется из бэкапа. Последний бэкап был сделан вчера поздно вечером.
Есть ли способы запустить базу без наката бэкапа? Если нет, то или опишите, или дайте ссылки на то как сделать восстановаление правльно и при этом не нужно былобы выгружать заново все удаленные базы?
...
Рейтинг: 0 / 0
22.06.2007, 16:35
    #34614308
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
копируешь в одну папку вчерашнюю базу и вчерашний лог
1. dbeng9 db_name.db -a log_name.log
где база и лог - из архива. Да, лог именно тот старый, который лежит со вчерашней базой.
2. потом копируешь последовательно все логи из сломанной базы (если их будет больше одного) и применяешь их аналогичным образом
dbeng9 db_name.db -a xxx.log

после этого запускаешь
лучше погасить dbremote на остальных базах и проверить работу с одной какой-нить remote-ной базой, чтобы убедиться что все в порядке...
если они вдвоем фунциклируют, то все в порядке
З.Ы. я давно проверял этот сценарий, могу слегка ошибаться... в частности в синтаксисе dbeng
...
Рейтинг: 0 / 0
22.06.2007, 16:43
    #34614340
Ser4g
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
У меня сегодня ночью похожее произошло.

I. 06/22 03:00:17. Starting checkpoint of "BD_NAME" at Fri Jun 22 2007 03:00
E. 06/22 03:00:17. *** ERROR *** Assertion failed: 201819 (9.0.2.3456)
E. 06/22 03:00:17. Checkpoint log: invalid bitmap page
I. 06/22 03:00:17. *** ERROR *** Assertion failed: 201819 (9.0.2.3456)
I. 06/22 03:00:17. Checkpoint log: invalid bitmap page
I. 06/22 03:00:17.
I. 06/22 03:00:17. Attempting to save dump file at 'C:\TEMP\sa_dump.dmp'
I. 06/22 03:00:17. Dump file saved

База рухнула конкретно - без восстановления.
Спас бекап с накаткой лога...
...
Рейтинг: 0 / 0
22.06.2007, 17:03
    #34614401
Filimonenko Sergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Я пробовал сделать, как описал Рыжий Кот.
Запустил базу с архива с ее же логом:
dbEng9 is_basa.db -a is_basa.log
Все прошло нормально.
Потом по очереди начал ее запускать с логами упавшей консолидированой базы (начиная с самых старых...070119AA.log, 070125AA.log и т.д.) - пишет:
I. 06/22 15:57:53. Error: Cannot open transaction log file -- Can't use log file "D:\Recovery\FailBase\070619ab.log" since the database file has been used more recently

А если применить последний лог - 070622AA.LOG, то выдает следующее:
E. 06/22 15:58:00. Internal database error *** ERROR *** Assertion failed: 100903 (9.0.2.3420)
E. 06/22 15:58:00. Unable to find table definition for table referenced in transaction log -- transaction rolled back

Ser4g - опишите плиз поподробнее, шаг за шагом, что вы делали для восстановления, как накатывали лог-файлы? ПЛИИИЗ!
...
Рейтинг: 0 / 0
22.06.2007, 17:31
    #34614480
Ser4g
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Был взят последний бекап (1.db) и два лога 1.log и 2.log
2.log это лог от той базы которая рухнула.
потом dbeng9.exe 1.db -a 1.log
далее dbeng9.exe 1.db -a 2.log

ша самое удивительное с логом 2.log база не хотела стартовать, выдавало такое же
06/22 15:57:53. Error: Cannot open transaction log file -- Can't use log file "D:\Recovery\FailBase\070619ab.log" since the database file has been used more recently

сделал
dblog.exe -n 1.db
dblog.exe -t new_log.log 1.db

после этого база стартонула и вроди тфу тфу тфу
...
Рейтинг: 0 / 0
22.06.2007, 17:34
    #34614487
Ser4g
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Забыл добавить, у меня, в отличии от Вас нет репликации.... это наверное как-то меняет дело.
...
Рейтинг: 0 / 0
22.06.2007, 17:47
    #34614512
Filimonenko Sergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Та да, в общемто .. очень даже меняет дело.
Я не могу сделать это:
D:\Recovery\21.06.07>dblog -n is_basa.db
Adaptive Server Anywhere Transaction Log Utility Version 9.0.2.3420
Cannot remove the transaction log since a SQL Remote truncation point exists
You must also specify the -ir switch to remove the transaction log
...
Рейтинг: 0 / 0
22.06.2007, 18:05
    #34614575
Filimonenko Sergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Плиз... посоветуйте кто-то как восстановить базу с репликацями.
...
Рейтинг: 0 / 0
22.06.2007, 18:08
    #34614584
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Filimonenko SergeyПлиз... посоветуйте кто-то как восстановить базу с репликацями.А вот так и восстанавливать... То что Рыжий Кот писал это и есть единственный и самый правильный метод восстановления.
Если он не поможет - прийдется заново выгружать удаленные базы.
...
Рейтинг: 0 / 0
22.06.2007, 18:55
    #34614709
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
то, что он пишет - Can't use log file "D:\Recovery\FailBase\070619ab.log" since the database file has been used more recently - это по-моему ничего страшного..., т.е. в них содержатся инструкции, которые уже применились...,
а вот то, что падает последний - скорее всего, вы нашли баг..., т.е. в этом логе есть последовательность инструкций, роняющих базу.
ИЛИ
вчерашняя база уже поврежденная, поднимите вчерашнюю без накатывания логов и сделайте полную проверку
...
Рейтинг: 0 / 0
23.06.2007, 12:41
    #34615210
yourij_mw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
- Can't use log file "D:\Recovery\FailBase\070619ab.log" --
может вы запускали архивную базу. Если так то этого не следовало было делать до того пока на накатете все логи.
...
Рейтинг: 0 / 0
25.06.2007, 13:02
    #34617123
Filimonenko Sergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Слетела база. Failed to redo a database opertaion
Всем огромное спасиба! Особенно Рыжему Коту :)
Все получилось. В общем сделал так:
dbeng9 is_basa.db -a is_basa.log - на архивной базе и логе
потом переписал лог предпоеследний лог 070622AA.LOG и применил его к архивной базе:
dbeng9 is_bsas.db -a 070622AA.LOG
затем переписал лог и млг рухнувшей базы в каталог архивной и применил их
dbeng9 is_basa.db -a is_basa.log
В общем-то после этого все и поднялось... база заработала как и прежде.. SQLRemote работает чудесно, без глюков.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Слетела база. Failed to redo a database opertaion / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]