最近在做NBU ORACLE備份的恢複測試,執行恢復時報錯ORA-27211: Failed to load Media Management Library,具體處理過程如下:一、錯誤信息 執行命令: 報錯信息: 二、錯誤原因 由於資料庫的Lib庫不包含NBU的庫文件,所以執行rman恢復時報錯 ...
最近在做NBU ORACLE備份的恢複測試,執行恢復時報錯ORA-27211: Failed to load Media Management Library,具體處理過程如下:
一、錯誤信息
執行命令:
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庫文件目錄下即可
[oracle@node1 oracle]$ ln -s /usr/openv/netbackup/bin/libobk.so64 /U01/app/oracle/product/11.2.0.4/lib/libobk.so
[oracle@node1 oracle]$ sbttest /etc/hosts
[oracle@node1 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';