RMAN

restore database from tape

0- Goal : Restore enyo:C1EPROJ4 to iris:C1IUATJ4

Important on the target and the source databases should have the same db_name : C1EPROJ

1-

connect target /
set DBID=1515590738
run {
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
SEND 'NB_ORA_SERV=gvaveritasbck1.corp.sch.ch,NB_ORA_CLIENT=enyoa.corp.sch.ch,NB_ORA_POLICY=OraclePrdDbBackupPolicy_Srcpit,NB_ORA_SCHED=Oracle_RMAN0_Monthly_Application';
set until time  "TO_DATE('18-06-2024 18:00:00','DD-MM-YYYY HH24:MI:SS')";
restore controlfile from autobackup;
release channel ch00;
}

2- mount database

RMAN> alter database mount;
 
Statement processed

3- restore and recover

run {
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch01 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch02 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch03 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch04 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch05 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch06 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
ALLOCATE CHANNEL ch07 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
SEND 'NB_ORA_SERV=gvaveritasbck1.corp.sch.ch,NB_ORA_CLIENT=enyoa.corp.sch.ch,NB_ORA_POLICY=OraclePrdDbBackupPolicy_Srcpit,NB_ORA_SCHED=Oracle_RMAN0_Monthly_Application';
set until time  "TO_DATE('18-06-2024 18:00:00','DD-MM-YYYY2>  HH24:MI:SS')";
restore database;
recover database;
release channel ch00;
release channel ch01;
release channel ch02;
release channel ch03;
release channel ch04;
release channel ch05;
release channel ch06;
release channel ch07;
}

4- open resetlogs

SQL> alter database open resetlogs;
 
Database altered.
 
SQL>

4- recreate redo if needed (– not needed but verify that redo are on the right place)

5- Rename PDB if needed

=== restore archivelog from tape === == Standalone == <code BASH> run { ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64'; SEND 'NB_ORA_SERV=NBU.labo.local,NB_ORA_CLIENT=oracle1.labo.local,NB_ORA_POLICY=OracleDbArchiveBackupPolicy_Script'; restore archivelog sequence 33261 ; } </code> == RAC == Dane le cadre d'un dataguard, on liste les thread: <code PLSQL> select * from gv$archive_gap; INST_ID THREAD# LOW_SEQUENCE# HIGH_SEQUENCE# CON_ID ———- ———- ————- ————– ———- 2 1 31765 31767 1 2 2 33262 33264 1 1 1 31765 31767 1 1 2 33262 33264 1 </code> On restore l'archive manquante <code BASH> run { ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE' PARMS 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64'; SEND 'NB_ORA_SERV=NBU.labo.local,NB_ORA_CLIENT=oracle1.labo.local,NB_ORA_POLICY=OracleDbArchiveBackupPolicy_Script'; restore archivelog sequence 33261 thread 2 ; } </code>