powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / RMAN backup and recover
13 сообщений из 13, страница 1 из 1
RMAN backup and recover
    #32063606
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот захотелось создать такой скрипт (вернее не мне захотелось, а шефу), который восстановит базу из бекапа так сказать без вмешательства человека.
Бекап собственно делается вот таким скриптиком:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
# Online full without catalog + archives + delete archives
connect target sys/force
run {
        allocate channel t1 type 'SBT_TAPE'
        Parms
'ENV=(NSR_SERVER=epsilon,NSR_DATA_VOLUME_POOL=Default,NSR_SAVESET_EXPIRATION=Month,NSR_CLIENT=omega)';
        backup full filesperset  2 
        (database format 'NMO%d.%s.%u');
        sql 'alter system archive log current';
        backup skip inaccessible filesperset  10  format 'NMOArc%t%s%p%u'
        (archivelog all delete input);
        release channel t1;
        sql  "alter database backup controlfile to ''/tmp/crtlfile.dat'' reuse" ;
}


Проблема в том, что полностью автоматизировать
восстановление только одним rman скриптом не удается.
Вот такой скрипт:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
connect target internal/oracle
startup nomount
run {
        allocate channel d1 type disk;
        replicate controlfile from '/tmp/crtlfile.dat';
        release channel d1;
        allocate channel t1 type 'SBT_TAPE'
        Parms 'ENV=(NSR_SERVER=epsilon)';
        sql 'alter database mount';
        restore database;
        recover database;
        release channel t1;
        sql 'ALTER DATABASE OPEN RESETLOGS';
}

вываливается с ошибкой:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
RMAN- 08060 : unable to find archivelog
RMAN- 08510 : archivelog thread= 2  sequence= 629 
RMAN- 00571 : ===========================================================
RMAN- 00569 : =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN- 00571 : ===========================================================
RMAN- 03002 : failure during compilation of command
RMAN- 03013 : command type: recover
RMAN- 03006 : non-retryable error occurred during execution of command: recover( 4 )
RMAN- 07004 : unhandled exception during command execution on channel default
RMAN- 20000 : abnormal termination of job step
RMAN- 06054 : media recovery requesting unknown log: thread  2  scn  100254325 


Конечно, если запустить потом sqlplus и сказать alter database open resetlogs, то все замечательно, но как-то некрасиво это. Т.е. вопрос собственно в том, возможно ли все реализовать одним скриптом на rman без вываливания ошибки?
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063620
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. RMAN ресторит нужные архивные логи правильно, но не может их накатить?

Кстати почему trhead = 2 непонятно , у тебя OPS/RAC ?
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063628
mms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mms
Гость
Я RMAN не пользуюсь, но по моему может помощь следующая вещь:
вместо команды RECOVER DATABASE можно попробовать RECOVER AUTOMATIC DATABASE UNTIL change <N>, где N -это номер изменения из последнего лог-файла который будет накатываться. Тогда ошибку вываливать не будет. Как определить этот номер в RMAN не знаю, я его определял в момент бэкапа по запросу из базы.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063636
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>т.е. RMAN ресторит нужные архивные логи правильно, но
>не может их накатить?

нет, все что rman пробекапил он накатил. Проблема как я понимаю в том, что controlfile бекапится позже и у него есть номер секв., который в редологах. Вот он его и ищет.

>Кстати почему trhead = 2 непонятно , у тебя OPS/RAC ?

не, у меня просто OPS 8.1.7.2

>Я RMAN не пользуюсь, но по моему может помощь
>следующая вещь:
>вместо команды RECOVER DATABASE можно попробовать
>RECOVER AUTOMATIC DATABASE UNTIL change <N>, где N -
>это номер изменения из последнего лог-файла который
>будет накатываться. Тогда ошибку вываливать не будет.
>Как определить этот номер в RMAN не знаю, я его
>определял в момент бэкапа по запросу из базы.

я знаю как определить until в rman, но проблема в том, что хочется автоматизма. А если этот номер определить, то его надо также где-нибудь хранить и динам. редактировать скрипт, что тоже нежелательно.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063647
mms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mms
Гость
У меня просто в момент бекапа, сразу формируется сценарий востановления, который не требует стороннего вмешательства. Как это проделать в RMAN я не знаю.
ЗЫ: Плюнь на RMAN и делай собственный :-)
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063653
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>У меня просто в момент бекапа, сразу формируется
>сценарий востановления, который не требует стороннего
>вмешательства. Как это проделать в RMAN я не знаю.

В принципе, можно и так средствами rman + shell сделать, но можно ведь и так запускать два скрипта - первый с rman, который вывалит ошибку, а затем sqlplus, который сделает resetlogs и все.

>ЗЫ: Плюнь на RMAN и делай собственный :-)

ты что!!!??? а за что Legato деньги плачены (Oracle Module)?
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063654
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у тебя цель то какая?

восстановится на текущий момент времени или incomplete recovery на комплекте резервных файлов данных и редо логов?

RECOVER DATABASE насколько я помню не подразумевает ресет логов.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063660
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>а у тебя цель то какая?
>восстановится на текущий момент времени или
>incomplete recovery на комплекте резервных файлов
>данных и редо логов?

на самом деле примеры скриптов, которые я привел несколько упрощены. Архивация (cвитч), а потом и бекап редологов производится каждый час. Т.е. задача восстановиться на текущий момент времени -59 минут максимум.

>RECOVER DATABASE насколько я помню не подразумевает
>ресет логов.

ну да, а как при онлайн бекапе можно избежать resetlogs?
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063673
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возможно, я чего путаю...


Вобщем то и не важно, online или оффлайн. Ты ведь пытаешься накатить всё редо из архивных + онлайн логов? Так зачем после их ресетить, не могу я понять чего-то.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063685
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Вобщем то и не важно, online или оффлайн. Ты ведь
>пытаешься накатить всё редо из архивных + онлайн
>логов? Так зачем после их ресетить, не могу я понять
>чего-то.

нет, разыгрывается худший вариант - "все, все что нажито непосильным трудом - все пропало" :-) - т.е. сервер пропал полностью.
т.е. редологов (онлайн логов неархивированных) не будет.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063689
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 mms

Вот, кстате, еще один аргумент в пользу rman - место и время на лентах очень существенно экономятся, т.к. rman бекапит только заполненые блоки ниже hwm. Т.е. есть разница 50 Гиг бекапить или только 30.
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063698
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тогда, я думаю просто RECOVER DATABASE не подходит по смыслу как и писал mms, нужно incomplete recovery

Еще вариант, если грешишь на controlfile, попробуй его бэкапить в первую очередь. По идее ведь структура БД не меняется
...
Рейтинг: 0 / 0
RMAN backup and recover
    #32063706
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>тогда, я думаю просто RECOVER DATABASE не подходит по
>смыслу как и писал mms, нужно incomplete recovery

ну да, но incomplete recovery требует определенного номера seq, которого я не хочу явно устанавливать. Ладно закроем тему, наверное, я много хочу от rman (хотя ведь sqlplus, например, не вываливается в шелл при ORA error).

>Еще вариант, если грешишь на controlfile, попробуй его
>бэкапить в первую очередь. По идее ведь структура БД
>не меняется

так не получится, потому что у меня нет рекавери каталога и вся информация хранится именно в cf. Поэтому если бекапить его сначала, то он не будет знать, что арклоги тоже пробекаплены и не будет их восстанавливать.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / RMAN backup and recover
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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