25.03.2015 21:56
Neutron
 
Не хотелось плодить темы по поводу ошибки ora-01092, решил написать здесь:
Вот:
Имеется винда 2003r2 32b
Oracle 10.2.0.4.0
RAID1
Скачок напряжение, выключения сервера
Включение...Перестроение...
База изначально в режиме noarchivelog
Бекап холодный
При старте базы после монтирования вываливается ошибка
Цитата:
ORA-01092: ORACLE instance terminated. Disconnection forced
После прочтения архивлога
Цитата:
Errors in file d:\admin\TEST\udump\TEST01_ora_17092.trc:
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF'
И изучения файла TEST01_ora_17092.trc
Цитата:
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF'
было решено стартануть базу базу переводом файла undotbs в offline режим и переводом undo_management в manual, не помогло(
Перечислю все что я перепробовал...
alter database recover database;...
recover datafile с последующим подсовыванием журнального(журнальных) файла...
пересоздание контрольников без тп undo(ругалось на system01.dbf с той же ошибкой) и попыткой открыть базу...(вернул все назад благо дело есть рез.копия имеющегося)
RECOVER DATABASE UNTIL CHANGE просит SCN которых у меня в журнальных файлах нет (подсовывание их не помогло, а архивлога нет)...
Не помогло...

Выборка
Цитата:
SQL> select file#, CHECKPOINT_CHANGE# from v$datafile_header;
приводит
Цитата:
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 404882457
2 404501386
3 404882457
4 404882457
5 404882457
6 404882457

6 rows selected.
Посоветуйте пожалуйста что можно еще попробовать чтобы открыть базу...
Или может есть способ достать таблицы в режиме mount?
мне документы нужно вытянуть за один день. (последний день, его в холодном бекапе нет)
заранее спасибо!

update
Я стока всего перепробовал что и забыл что файл у меня был в офлайне, перевел его в онлайн
появилась другая ошибка...
Цитата:
Database mounted.
ORA-01190: control file or data file 2 is from before the last RESETLOGS
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF'
кажется это последствия моих манимуляций с офлайн/онлайн(
файлы редо есть только в холодном бекапе прошлого дня(вроде и не подсунешь их...замучался, завтра с утра начну колдовать по новой...
25.03.2015 22:23
Neutron
 
Думаю с утра попробовать прописать в инишнике _allow_resetlogs_corruption=TRUE наряду с _offline_rollback_segments и стартануть с resetlogs...посмотрим что получится...а пока почитаю, может и найду что дельное
О результатах отпишусь.
26.03.2015 07:18
OlegON
 
Тестовая база чтоль? Почему нормально не сделал? Если тестовая, то брось, ситуация из разряда, что сам хотел, чтобы так получилось.
_allow_resetlogs_corruption=TRUE сейчас тебе не актуально, на них не ругается, но могут быть сюрпризы, если включишь.
Верни все, как было и посмотри, что у тебя с D:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF визуально, размер, например, вообще есть он? Какие архивлоги база у тебя читала до ошибки, если в noarchivelog? Вообще куда-то тебя не туда понесло, просто пересоздай UNDO и все. Думается, самое интересное начнется после этого, потому и задавал вопросы в первом предложении.
26.03.2015 09:22
Neutron
 
База не тестовая (то есть уже тестовая)) просто нужно выдрать из нее один день платежей и приходов...
для пересодания UNDO я должен как то открыть базу а оно у меня не получается...
плюется этим
Цитата:
ORA-01092: ORACLE instance terminated. Disconnection forced
база в noarchivelog
UNDOTBS01.DBF есть, визуально нормально размер 3гб...вроде все ок...
26.03.2015 15:37
Neutron
 
А есть какой нибудь способ получить данные из таблиц в режиме mount?
26.03.2015 15:53
Neutron
 
Dim в режиме mount оно мне дает такой возможности, я бы с радостью....
26.03.2015 18:05
Neutron
 
Вообщем снова пошел ранее описанным путем
инишник с параметром undo_management=manual
Цитата:
shutdown immediate
startup nomount pfile='init.ora'
Далее пересоздал контрольники без ундо
Цитата:
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 904
LOGFILE
GROUP 1 'D:\ORACLE\ORADATA\TEST\REDO01.LOG' SIZE 100M,
GROUP 2 'D:\ORACLE\ORADATA\TEST\REDO02.LOG' SIZE 100M,
GROUP 3 'D:\ORACLE\ORADATA\TEST\REDO03.LOG' SIZE 100M
DATAFILE
'D:\ORACLE\ORADATA\TEST\SYSTEM01.DBF',
'D:\ORACLE\ORADATA\TEST\INDX01.DBF',
'D:\ORACLE\ORADATA\TEST\TOOLS01.DBF',
'D:\ORACLE\ORADATA\TEST\USERS01.DBF',
'D:\ORACLE\ORADATA\TEST\SYSAUX01.DBF'
CHARACTER SET CL8MSWIN1251
;
Цитата:
startup mount
Цитата:
recover database
И с надеждой что база откроется...
Цитата:
alter database open
Вывалилась ошибка (лед тронулся уже не о undo, не знаю насколько это хорошо или плохо...)
Цитата:
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-01173: data dictionary indicates missing data file from system tablespace
Народ если есть опыт борьбы с данной ошибкой пишите, а я пока буду разбираться с этим...по ходу буду отписываться
Часовой пояс GMT +3, время: 21:11.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.