NBU重新設定導致恢複不成功--Oracle和NBU的link,nbu--oracle
[root@SsevendbS01 rman]# su - oracle[oracle@SsevendbS01 ~]$ rman target /
Recovery Manager: Release 11.2.0.3.0 - Production on Fri Sep 19 09:47:47 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: sevendb (not mounted)
RMAN> restore controlfile from '/usr/openv/rman/control.sevendb';
Starting restore at 19-SEP-14using target database control file instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: SID=461 device type=DISK
channel ORA_DISK_1: copied control file copyoutput file name=/oradata/sevendb/control01.ctloutput file name=/oradata/sevendb/control02.ctlFinished restore at 19-SEP-14
RMAN> alter database mount;
database mountedreleased channel: ORA_DISK_1
RMAN> list incarnation of database;
List of Database IncarnationsDB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time------- ------- -------- ---------------- --- ---------- ----------1 1 sevendb 1917838411 PARENT 1 25-OCT-122 2 sevendb 1917838411 CURRENT 7906931 17-JAN-13
RMAN> run {2> set until time "to_date ('09/18/2014 18:30:00', 'MM/DD/YYYY HH24:MI:SS' )";3> allocate channel c1 type sbt;4> send 'NB_ORA_CLIENT=PsevendbS01' ;5> restore database;6> recover database;7> release channel c1;8> }
executing command: SET until clause
RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03009: failure of allocate command on c1 channel at 09/19/2014 09:48:27ORA-19554: error allocating device, device type: SBT_TAPE, device name: ORA-27211: Failed to load Media Management LibraryAdditional information: 2
RMAN>
[oracle@SsevendbS01 trace]$ cat sevendb_ora_13171.trcTrace file /oracle/app/oracle/diag/rdbms/sevendb/sevendb/trace/sevendb_ora_13171.trcOracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsORACLE_HOME = /oracle/app/oracle/product/11.2.0/dbhome_1System name: LinuxNode name: SsevendbS01Release: 2.6.18-194.el5Version: #1 SMP Tue Mar 16 21:52:39 EDT 2010Machine: x86_64Instance name: sevendbRedo thread mounted by this instance: 1Oracle process number: 23Unix process pid: 13171, image: oracle@SsevendbS01 (TNS V1-V3)
*** 2014-09-19 10:04:04.632*** SESSION ID:(461.19) 2014-09-19 10:04:04.632*** CLIENT ID:() 2014-09-19 10:04:04.632*** SERVICE NAME:() 2014-09-19 10:04:04.632*** MODULE NAME:(rman@SsevendbS01 (TNS V1-V3)) 2014-09-19 10:04:04.632*** ACTION NAME:(0000001 STARTED1) 2014-09-19 10:04:04.632 SKGFQ OSD: Error in function sbtinit on line 2734SKGFQ OSD: Look for SBT Trace messages in file /oracle/app/oracle/diag/rdbms/sevendb/sevendb/trace/sbtio.logSBT Initialize failed for oracle.static[oracle@SsevendbS01 trace]$ which sbttest/oracle/app/oracle/product/11.2.0/dbhome_1/bin/sbttest[oracle@SsevendbS01 lib]$ sbttest /etc/hostsThe sbt function pointers are loaded from oracle.static library.libobk.so could not be loaded. Check that it is installed
查了很多資料發現:導致上述結果的原因是Oracle沒有和NBU做連結,cd $ORACLE_HOME/libln /usr/openv/netbackup/bin/libobk.so操作後重新測試SBTTEST:[oracle@SsevendbS01 lib]$ sbttest /etc/hostsThe sbt function pointers are loaded from libobk.so library.-- sbtinit succeeded-- sbtinit (2nd time) succeededsbtinit: Media manager supports SBT API version 2.0sbtinit: Media manager is version 5.0.0.0sbtinit: vendor description string=Veritas NetBackup for Oracle - Release 7.5 (2013061020)sbtinit: allocated sbt context area of 8 bytessbtinit: proxy copy is supported-- sbtinit2 succeeded-- regular_backup_restore starts ................................OK,配置成功。
[oracle@SsevendbS01 lib]$ ls -lrt /oracle/app/oracle/product/11.2.0/dbhome_1/lib/libobk.so64 ls: /oracle/app/oracle/product/11.2.0/dbhome_1/lib/libobk.so64: No such file or directory[oracle@SsevendbS01 lib]$ [oracle@SsevendbS01 lib]$ [oracle@SsevendbS01 lib]$ pwd/oracle/app/oracle/product/11.2.0/dbhome_1/lib[oracle@SsevendbS01 lib]$ cp /usr/openv/netbackup/bin/libobk.so64 libobk.so64[oracle@SsevendbS01 lib]$ pwd/oracle/app/oracle/product/11.2.0/dbhome_1/lib[oracle@SsevendbS01 lib]$ ls -lrt /oracle/app/oracle/product/11.2.0/dbhome_1/lib/libobk.so64 -r-xr-xr-x 1 oracle oinstall 1511982 Sep 19 10:03 /oracle/app/oracle/product/11.2.0/dbhome_1/lib/libobk.so64[oracle@SsevendbS01 lib]$ [oracle@SsevendbS01 lib]$ [oracle@SsevendbS01 lib]$ rman target /
Recovery Manager: Release 11.2.0.3.0 - Production on Fri Sep 19 10:04:01 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: sevendb (DBID=1917838411, not open)
RMAN> run {2> set until time "to_date ('09/18/2014 18:30:00', 'MM/DD/YYYY HH24:MI:SS' )";3> allocate channel c1 type sbt;4> send 'NB_ORA_CLIENT=PsevendbS01';5> restore database;6> recover database;7> release channel c1;8> }
executing command: SET until clause
using target database control file instead of recovery catalogRMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03009: failure of allocate command on c1 channel at 09/19/2014 10:04:04ORA-19554: error allocating device, device type: SBT_TAPE, device name: ORA-27211: Failed to load Media Management LibraryAdditional information: 2
RMAN> exit
Recovery Manager complete.
[oracle@SsevendbS01 lib]$ mv libobk.so64 libobk.so需要將libobk.so64改為libobk.so。[oracle@SsevendbS01 lib]$ rman target /
Recovery Manager: Release 11.2.0.3.0 - Production on Fri Sep 19 10:04:26 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: sevendb (DBID=1917838411, not open)
RMAN> run {2> set until time "to_date ('09/18/2014 18:30:00', 'MM/DD/YYYY HH24:MI:SS' )";3> allocate channel c1 type sbt;4> send 'NB_ORA_CLIENT=PsevendbS01';5> restore database;6> recover database;7> release channel c1;8> }
executing command: SET until clause
using target database control file instead of recovery catalogallocated channel: c1channel c1: SID=461 device type=SBT_TAPEchannel c1: Veritas NetBackup for Oracle - Release 7.5 (2013061020)
sent command to channel: c1
Starting restore at 19-SEP-14
channel c1: starting datafile backup set restorechannel c1: specifying datafile(s) to restore from backup setchannel c1: restoring datafile 00002 to /oradata/sevendb/sysaux01.dbfchannel c1: restoring datafile 00004 to /oradata/sevendb/users01.dbfchannel c1: restoring datafile 00005 to /oradata/sevendb/tivoliorts01.dbfchannel c1: restoring datafile 00006 to /oradata/sevendb/TS_CIM_DATA_01.dbfchannel c1: restoring datafile 00009 to /oradata/sevendb/TS_ETL_IND_01.dbfchannel c1: reading from backup piece bk_4975_1_858258002channel c1: ORA-19870: error while restoring backup piece bk_4975_1_858258002ORA-19507: failed to retrieve sequential file, handle="bk_4975_1_858258002", parms=""ORA-27029: skgfrtrv: sbtrestore returned errorORA-19511: Error received from media manager layer, error text: Backup file <bk_4975_1_858258002> not found in NetBackup catalog
channel c1: starting datafile backup set restorechannel c1: specifying datafile(s) to restore from backup setchannel c1: restoring datafile 00001 to /oradata/sevendb/system01.dbfchannel c1: restoring datafile 00003 to /oradata/sevendb/undotbs01.dbfchannel c1: restoring datafile 00007 to /oradata/sevendb/TS_CIM_IND_01.dbfchannel c1: restoring datafile 00008 to /oradata/sevendb/TS_ETL_DATA_01.dbfchannel c1: reading from backup piece bk_4976_1_858258148channel c1: ORA-19870: error while restoring backup piece bk_4976_1_858258148ORA-19507: failed to retrieve sequential file, handle="bk_4976_1_858258148", parms=""ORA-27029: skgfrtrv: sbtrestore returned errorORA-19511: Error received from media manager layer, error text: Backup file <bk_4976_1_858258148> not found in NetBackup catalog
failover to previous backup
channel c1: starting datafile backup set restorechannel c1: specifying datafile(s) to restore from backup setchannel c1: restoring datafile 00002 to /oradata/sevendb/sysaux01.dbfchannel c1: restoring datafile 00004 to /oradata/sevendb/users01.dbfchannel c1: restoring datafile 00005 to /oradata/sevendb/tivoliorts01.dbfchannel c1: restoring datafile 00006 to /oradata/sevendb/TS_CIM_DATA_01.dbfchannel c1: restoring datafile 00009 to /oradata/sevendb/TS_ETL_IND_01.dbfchannel c1: reading from backup piece bk_4894_1_857653202channel c1: ORA-19870: error while restoring backup piece bk_4894_1_857653202ORA-19507: failed to retrieve sequential file, handle="bk_4894_1_857653202", parms=""ORA-27029: skgfrtrv: sbtrestore returned errorORA-19511: Error received from media manager layer, error text: Backup file <bk_4894_1_857653202> not found in NetBackup catalog
channel c1: starting datafile backup set restorechannel c1: specifying datafile(s) to restore from backup setchannel c1: restoring datafile 00001 to /oradata/sevendb/system01.dbfchannel c1: restoring datafile 00003 to /oradata/sevendb/undotbs01.dbfchannel c1: restoring datafile 00007 to /oradata/sevendb/TS_CIM_IND_01.dbfchannel c1: restoring datafile 00008 to /oradata/sevendb/TS_ETL_DATA_01.dbfchannel c1: reading from backup piece bk_4895_1_857653337
以上報錯提示找不到備份片,通常此等報錯均是跟NBU的media server有關,通過查看/etc/hosts 和 bp.conf 發現沒有問題,最終將問題定位到NB_ORA_CLIENT=PsevendbS01上,查看NBU備份指令碼,其中client為PsevendbS而不是PsevendbS01,更改恢複指令碼後,恢複成功。
nbu怎使用備份檔案進行恢複oracle
1.建立PFILE
2.用pfile啟動到MOUNT,恢複控制檔案
3.根據控制檔案恢複資料檔案
4.resetlog開啟資料庫
大致流程就這樣了!
NBU75可以在不停止資料庫的情況下執行oracle_link?
可以,直接運行指令碼