NBU Oracle恢復案例
執行命令:
run {
ALLOCATE CHANNEL ch00 TYPE SBT_TAPE;
send 'NB_ORA_CLIENT=192.168.x.x';
send 'NB_ORA_SERV=nbu5230';
restore controlfile from '/ctrl_dTESTDB_u0at7lkpa_s10_p1_t981127978';
release channel ch00;
}
報錯資訊:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of allocate command on ch00 channel at 07/10/2018 16:16:09
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
Additional information: 2
二、錯誤原因
由於資料庫的Lib庫不包含NBU的庫檔案,所以執行rman恢復時報錯
三、解決方案
將NBU的庫檔案放入Oracle庫檔案目錄下即可
[[email protected] oracle]$ ln -s /usr/openv/netbackup/bin/libobk.so64 /U01/app/oracle/product/11.2.0.4/lib/libobk.so
[[email protected] oracle]$ sbttest /etc/hosts
[[email protected] oracle]$ sbttest /etc/hosts
The sbt function pointers are loaded from libobk.so library.
-- sbtinit succeeded
-- sbtinit (2nd time) succeeded
sbtinit: Media manager supports SBT API version 2.0
sbtinit: Media manager is version 5.0.0.0
sbtinit: vendor description string=Veritas NetBackup for Oracle - Release 7.7.2 (2016011116)
sbtinit: allocated sbt context area of 8 bytes
sbtinit: proxy copy is supported
-- sbtinit2 succeeded
-- regular_backup_restore starts ................................
四、知識擴充套件
1.NBU資料庫恢復指令碼
run {
allocate channel t1 type 'sbt_tape';
allocate channel t2 type 'sbt_tape';
allocate channel t3 type 'sbt_tape';
send 'NB_ORA_CLIENT=192.168.x.x';
send 'NB_ORA_SERV=nbu5230';
set until sequence 12 thread 1;
restore database;
#switch datafile all;
recover database;
release channel t1;
release channel t2;
release channel t3;
}
2.歸檔日誌恢復
run {
allocate channel t1 type 'sbt_tape';
allocate channel t2 type 'sbt_tape';
send 'NB_ORA_CLIENT=192.168.x.x';
send 'NB_ORA_SERV=nbu5230';
restore archivelog from sequence 8 until sequence 12 INCARNATION ALL;
release channel t1;
release channel t2;
}
3.其他恢復
更改還原路徑:
RMAN> set archivelog destination to '/u01/backup';
還原全部備份歸檔:
RMAN> restore archivelog all;
歸檔日誌範圍恢復:
RMAN> restore archivelog from sequence 8 until sequence 12;
RMAN> restore archivelog sequence between 8 and 12;
從低sequence開始恢復:
RMAN> restore archivelog from sequence 5;
RMAN> restore archivelog low sequence 5;
從高sequnece截止恢復:
RMAN> restore archivelog until sequence 110;
RMAN> restore archivelog high sequence 108;
按時間恢復:
RMAN> restore archivelog from time 'sysdate-7';