RAC
環(huán)境介紹:源庫為RAC環(huán)境,目標庫為RAC環(huán)境,通過rman進行異機遷移及追加歸檔的方式實現(xiàn)數(shù)據(jù)遷移。減少停機時間。
在RAC任一節(jié)點上(建議選擇CPU占用少的節(jié)點),使用Oracle用戶設置源數(shù)據(jù)庫的ORACLE_SID,并使用數(shù)據(jù)庫的rman用戶登錄RMAN
在rman中執(zhí)行備份腳本
備份沒有報錯就說明備份成功了。
腳本說明:腳本中的紅色部分,可結合具體業(yè)務情況修改retention policy:備份保留時長,根據(jù)業(yè)務遷移的時間規(guī)劃,設備保留多少天,這里設置保留50天controlfile autobackup:是否自動備份控制文件,及控制文件備份的路徑和備份集的文件名,建議打開控制文件自動備份,備份路徑根據(jù)實際業(yè)務修改Allocate channel:根據(jù)源數(shù)據(jù)庫服務器的性能分派合理的通道,比如有8核的CPU,比如空閑CPU的60%。Backup incremental level 0:首次備份必須是Level 0備份集的路徑:數(shù)據(jù)庫和歸檔日志備份集的路徑可根據(jù)實際業(yè)務調整
可選項:壓縮備份集
可在backup后加上as compressed backupset,對備份集進行壓縮:
說明:啟用備份集的壓縮,CPU的占用率較高,一般2個通道大約占用70%的CPU(實驗室測試數(shù)據(jù)),過高的CPU占用率會影響數(shù)據(jù)庫的性能,可能導致數(shù)據(jù)庫掛起,建議在業(yè)務空間時間使用。壓縮率為7:1,即700G的數(shù)據(jù)庫,備份后大約為100G,以性能及時間換空間,若網(wǎng)絡傳輸不是數(shù)據(jù)庫遷移的瓶頸,建議不壓縮。Oracle10g備份集壓縮bug比較多,不建議使用。oracle11g備份集壓縮比較成熟,必要時可考慮使用。
創(chuàng)建備份集目錄
備份集建議存儲在共享存儲,各節(jié)點都可以訪問,若存儲在任一節(jié)點的本地,則后續(xù)只能在該節(jié)點備份。
備份路徑規(guī)劃:
Backup Level
Backup Path
Level 0
/home/oracle/backup/L0/
Arch備份
/home/oracle/backup/arch
創(chuàng)建備份文件目錄,并賦予權限:
Oracle用戶創(chuàng)建
# mkdir -p /home/oracle/backup/L0/
# mkdir -p /home/oracle/backup/arch
通過scp命令將源端的所有備份文件傳輸?shù)侥繕硕朔掌飨鄳膫浞菽夸浵隆?/p>
oracle@rac01:/home/oracle/backup>scp -r L0
oracle@192.168.100.113:/home/oracle/backup/
在目標端的節(jié)點1上,以Oracle用戶操作
啟動數(shù)據(jù)庫到nomount狀態(tài)
恢復pfile文件
源數(shù)據(jù)庫查看spfile備份信息
關閉數(shù)據(jù)庫
RMAN> shutdown immediate
在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作
打開pfile文件
內存參數(shù)
根據(jù)目標數(shù)據(jù)庫實際的物理內存調整
創(chuàng)建目錄
*.audit_file_dest='/u01/app/oracle/admin/racdb/adump'
在RAC的所有節(jié)點上,創(chuàng)建目錄:
/u01/app/oracle/admin/racdb/adump
Oracle用戶創(chuàng)建審計目錄
# mkdir -p /u01/app/oracle/admin/racdb/adump
數(shù)據(jù)文件磁盤組
*.db_create_file_dest='+DATA'
db_create_file_dest指定了數(shù)據(jù)文件所在的磁盤組+DATA,恢復前確保+DATA磁盤組已創(chuàng)建或修改為正確的磁盤組名。
FRA
*.db_recovery_file_dest='+ARCH'
FRA磁盤組,恢復前確保+FRA磁盤組已創(chuàng)建或修改為正確的磁盤組名
*.db_recovery_file_dest_size=4193255424
ARCH大小,請確保目標服務器有至少4193255424的大小或根據(jù)目標服務器+ARCH的磁盤組大小修改
db_recovery_file_dest_size參數(shù)值
在grid賬號下,asmcmd指令集內創(chuàng)建’+DATA/racdb/controlfile’目錄,如果啟用了OMF這步可以不做。本次采用OMF管理不需要創(chuàng)建。
在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作
啟動數(shù)據(jù)庫到nomount
設置DBID
RMAN> set dbid 1101198979;
此dbid號從源端查詢而來
Sql>select dbid from v$database;
指定備份控制文件路徑和文件名,恢復控制文件
在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作
修改pfile中控制文件信息
編輯$ORACLE_HOME/dbs/下的pfile文件initracdb1.ora,其中racdb1為節(jié)點1的ORACLE SID,修改*.control_files參數(shù)的控制文件名,控制文件的路徑和名稱參考控制文件恢復的結果。
啟動數(shù)據(jù)庫到mount狀態(tài)
創(chuàng)建spfile文件到ASM
在ASM中查看生成的spfile文件
修改參數(shù)文件指向spfile文件位置
關閉數(shù)據(jù)庫
當前的數(shù)據(jù)庫是以pfile文件啟動,恢復前關閉數(shù)據(jù)庫以spfile文件啟動。
SQL> shutdown immediate;
在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作
修改還原數(shù)據(jù)庫腳本中的set newname信息:磁盤組、路徑及文件名.
此處如果為omf管理且磁盤組名稱一致的不需要指定文件的名稱及set newname命令
查看需要變更路徑的數(shù)據(jù)文件
select 'set newname for datafile '||file#||' to '''||name||''';' from v$datafile;
查看需要重建的tempfile
select 'alter database tempfile '''||file_name||''' offline ' from dba_temp_files;
查看需要drop的temp表空間
select 'alter database tempfile '''||file_name||''' drop ' from dba_temp_files;
RMAN>場景1修改文件路徑
場景2不修改路徑
恢復成功
由于未復制online redo log,提示介質恢復正在請求未知的線程 1序列43的scn 1428035,忽略該錯誤。
若源數(shù)據(jù)庫打開了塊跟蹤,在恢復時Oracle會提示相關錯誤信息,建議禁用塊跟蹤,在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作
在目標數(shù)據(jù)庫RAC的節(jié)點1上,以Oracle用戶操作使用readonly打開數(shù)據(jù)庫 查看數(shù)據(jù)表情況
查看新增歸檔文件
備份歸檔文件
List backup of archivelog all;
下一篇:ORACLE RAC中連接ScanIP報錯ORA