1. 程式人生 > >NBU異構還原Oracle完整備份的一些總結

NBU異構還原Oracle完整備份的一些總結

nbu

準備

異構Ortacle服務器

添加相關服務器的Hosts記錄。

安裝NBU client agent。

安裝相同的Oracle軟件版本。

創建相同的管理員賬號及密碼。

創建與源Oracle相同名稱,相同路徑的oracle實例。

關閉數據庫(shutdown immedicate)。

刪除數據庫文件夾下的所有文件。

獲取源Oracle的DBID 並記錄(源Oracle運行SQL命令:Selectdbid from v$database;)。

NBU服務器

添加相關服務器的Hosts記錄。

NBU安裝目錄XXX/db/altnames文件夾下面創建文件名為No.Restrictions的空文件(用於允許NBU做異構還原)。

查找需要還原的控制文件並記錄控制文件名稱(bplist -C 源Oracle客戶端 -l -t 4 -s 6/13/2011 -e6/14/2011-R /)。

開始恢復

恢復控制文件

數據庫起到nomout狀態(startupnomount)。

登錄rman運行:

set dbid=源oracle的DBID

run{

ALLOCATE CHANNEL CH00 TYPE‘SBT_TAPE‘;

SEND ‘NB_ORA_SERV=NBU服務器名稱,NB_ORA_CLIENT=源Oracle服務器client名稱‘;

restore controlfile from ‘控制文件名稱‘;

}

恢復數據庫文件

數據庫起到mount狀態(startupmount)。

登錄rman運行

run {

ALLOCATE CHANNEL CH00 TYPE ‘SBT_TAPE‘;

SEND ‘NB_ORA_SERV= NBU服務器名稱, NB_ORA_CLIENT=H源Oracle服務器client名稱‘;

restore database;

}

恢復歸檔日誌(如只需要恢復玩完整備份,可不做)

登錄rman運行

run {

ALLOCATE CHANNEL CH02 TYPE‘SBT_TAPE‘;

SEND ‘NB_ORA_SERV= NBU服務器名稱, NB_ORA_CLIENT=H源Oracle服務器client名稱‘;

ESTORE ARCHIVELOG FROMSEQUENCE 序號

thread 1 UNTIL SEQUENCE 序號;

RELEASE CHANNEL CH02;

}

登錄SQL運行

recover database untilcancel

啟動數據庫

登錄SQL運行

alter database openresetlogs;


NBU異構還原Oracle完整備份的一些總結