|
|
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Как то запустил dbisql -c "UID=DBA;PWD=sql;ENG=job_opt_db_test;DBN=job_opt_db2;CommLinks=tcpip" import.sql. Текст import.sql: create table #temp1 (a int, b long varchar, c long varchar); input into #temp1 from 'd:\\transfer\\111.dbf' format DBASE; delete from JO_SPR_KL; insert into JO_SPR_KL(code, name, route) select a, b, c from #temp1; commit; После чего БД повисла, я сделал interrupt запроса, в результате чего БД умерла. Восстановление из backup-а не помогло. запустить БД с recovery option -f ничего не дало. При запуске сервера Central говорит Internal Error и вылетает. Есть ли какие-нибудь инструменты или способы, чтобы откатить БД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 15:38 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
файлик с сообщением об ошибке, на всякий случай... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 17:42 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
konst77Текст import.sql:Никакого криминала в нем нет konst77После чего БД повисла, я сделал interrupt запроса, в результате чего БД умерла. Восстановление из backup-а не помогло. запустить БД с recovery option -f ничего не дало.Во первых, -f это ни какая не "recovery option". Это команда серверу игнорировать существующий лог транзакций и создать его заново. Во вторых, у меня возникают подозрения что восстановление из бекапа делалось как-то не совсем правильно. Надо было взять файл базы данных из бекапа и заменить им рабочий файл базы данных. На этом "восстановление из бекапа" завершается. konst77При запуске сервера Central говорит Internal Error и вылетает. Есть ли какие-нибудь инструменты или способы, чтобы откатить БД?Запусти сервер вручную. С командной строки и смотри что он будет писать в своем окне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 17:59 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Запусти сервер вручную. С командной строки и смотри что он будет писать в своем окне ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 18:16 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
konst77Запусти сервер вручную. С командной строки и смотри что он будет писать в своем окне ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 18:16 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Восстанавливай базу из бекапа. Потом можешь попробовать накатить на нее свой лог от поломаной базы. Почитай вот эти главы: SQL Anywhere® Server - Database Administration > Backup and Data Recovery > Backup and recovery tasks ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 18:23 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
White OwlВосстанавливай базу из бекапа. Потом можешь попробовать накатить на нее свой лог от поломаной базы. Почитай вот эти главы: SQL Anywhere® Server - Database Administration > Backup and Data Recovery > Backup and recovery tasks запустил из командной строки dbeng10 E:\BASE\job_optim\job_opt_db.db -a F:\BACKUP\JOPTIMIZER\job_opt_db.log ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 18:56 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Ну значит опаньки. Что-то в этом последнем логе такое страшное что просто ой. Впрочем, можно еще так поиграться: запускаешь бекап базы с бекапом лога, смотришь на каком чекпоинте лог завершается. Через dbtran пробуешь расшифровать хотя бы часть поломаного лога, начиная с найденого на прошлом шаге чекопоинта. Полученый скрипт запускаешь на базу. В принципе это тоже самое что опция -a, но у тебя будет возможность перед накатом битого лога вручную покопаться в том что именно будет накатываться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2008, 19:11 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Конечно, надежда слабая, но всё-таки: Попробуйте скачать последний патч на ASA (в данный момент это билд 3649) и попробуйте повторить процедуру восстановления из BackUp-a. И еще: >>запустил из командной строки >>dbeng10 E:\BASE\job_optim\job_opt_db.db -a F:\BACKUP\JOPTIMIZER\job_opt_db.log Если я правильно понял, то - на поломанную базу вы пытаетесь накатить лог из бекапа? Если да - то надо наоборот - на базу из бекапа накатывать лог от поломанной ... Assertion ... возникает в файле базы из за какой то проблемы в нем самом (например: сбойный кластер на диске, ошибка в момент записи в файл базы по вине питания и т.д. ), а не в логе ... Лог содержит только операции над данными и/или структурой. Предполагается, что в файле базы из бекапа такой проблемы нет. Задача восстановления состоит в том, что повторить эти операции на файле базы без сбоев. Я бы вначале, перед восстановлением, протестировал файл базы из бекапа с помощью централа, а потом накатывал операции. Сами операции из лога навряд-ли могут привести к такому краху базы, хотя и это не исключено ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 11:04 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
2 автор А что значит "Восстановление из backup-а не помогло?" То есть backup уже был испорчен?? PaulJBКонечно, надежда слабая, но всё-таки: Попробуйте скачать последний патч на ASA (в данный момент это билд 3649) и попробуйте повторить процедуру восстановления из BackUp-a. Не поможет :( PaulJB Я бы вначале, перед восстановлением, протестировал файл базы из бекапа с помощью централа, а потом накатывал операции. Вылетит с той же ошибкой на сбойной странице при проверке. Validate это вообще издевательство над людьми. Если есть нормальная резервная копия - восстанавливайте из нее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 13:45 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
2 michael >>Вылетит с той же ошибкой на сбойной странице при проверке. Откуда такая уверенность, что вылетит ... ? Я писал, что надо проверить файл базы именно из бекапа , а не боевой. Боевой умер и приговор ему: Assertion ... Если при Validate будет валиться и файл бекапа, тогда можно поробывать выгрузить базу. У меня ест такая база, которая при валидейшн дает ошибку на индексах, а выгружается без проблем. Удаление (к стати) и последующее создание индекса не помогает :) Если при выгрузе будет валиться, тогда - сливайте воду ... >> Validate это вообще издевательство над людьми. Ну почему же? В 8 версии - да, а вот в остальных проблем никаких. В чем выражено это издевательство ? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 15:28 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
PaulJB 2 michael >>Вылетит с той же ошибкой на сбойной странице при проверке. Откуда такая уверенность, что вылетит ... ? Я писал, что надо проверить файл базы именно из бекапа , а не боевой. Боевой умер и приговор ему: Assertion ... Если при Validate будет валиться и файл бекапа, тогда можно поробывать выгрузить базу. У меня ест такая база, которая при валидейшн дает ошибку на индексах, а выгружается без проблем. Удаление (к стати) и последующее создание индекса не помогает :) Если при выгрузе будет валиться, тогда - сливайте воду ... Согласен. Просто, я понял, что предлагается валидатить ломанную базу. PaulJB >> Validate это вообще издевательство над людьми. Ну почему же? В 8 версии - да, а вот в остальных проблем никаких. В чем выражено это издевательство ? :) [/quot] Проблем никаких, когда нет никаких проблем с БД :) А когда физически повреждена страница, то validate, натыкаюсь на нее дает тот же Assertion, после чего сервер останавливается со всеми БД на нем :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 16:31 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
2 michael Validate пердназначена только для проверки, но не для восстановления. Процедура восстановления поломанного файла базы путем ковыряния в нем отсутствует. Только восстановление из бекапа. Я думаю, правильное обращение с логами и их зеркалками - защита от сбоев на 99,9%. Я, например, перед тем как "утверждать" бекап - вначале его прогоняю процедурой Validate, а только затем принимаю решение считать его (бекап) истинным. Некоторые считают это проявлением паранойи: "Создание бекапа - признак трусости ...", но не им же (умникам) базу потом восстанавливать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 17:35 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Validate только для восстановление, кто ж спорит-то А почему при диагностике, когда Validate находит первую же сбойную страницу памяти он тупо, также как при select или update, заваливет ВЕСЬ СЕРВЕР? Точнее, начиная с 9-ки все-таки сервер останавливается, а раньше вообще падал. Тот же DBCC на ASE или MS SQL ведет себя куда более корректно, он страется вадать весь список ошибок и уж сервер никак при этом не заваливается. А отсутствие средств ремонта в ASA это отдельная песьня. Впрочем, обсуждалось тут не раз уже все... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2008, 10:04 |
|
||
|
Как восстановить БД ASA 10.0.1 ?
|
|||
|---|---|---|---|
|
#18+
Господа кончайте ерундой заниматься... Даже не проверили для начала что упало база или лог а уже стока флейма развели... Вобщем порядок действий такой: пытаемся отвязать лог: dblog -n имя_базы.db если не получается то тогда dbeng(номер версии ASA).exe -f имя_базы.db и опять отвязываем лог: dblog -n имя_базы.db Если лог удалось отвязать и база стартанула - перевыгружаем... И только если нет - тогда побита уже сама база, вероятность восстановления невысокая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2008, 22:47 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=35170930&tid=2011641]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
293ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 199ms |
| total: | 609ms |

| 0 / 0 |
