共計 4606 個字符,預計需要花費 12 分鐘才能閱讀完成。
本篇文章為大家展示了 windows2008 Oracle 如何通過 rman 進行增量遷移,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
環境介紹:windows2008R2 Oracle11.2.0.1 非歸檔模式
遷移過程:
修改歸檔:
點擊 (此處) 折疊或打開
alter system set log_archive_dest_1= location=d:\archivelog scope=spfile;
shutdown immediate;
startup mount;
alter database archivelog;
alter database open
通過 rman 進行全備,當然也可以進行 0 級備份,后續增量備份,這里使用歸檔日志方式進行追加數據。
點擊 (此處) 折疊或打開
run {
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
allocate channel ch5 type disk;
sql alter system archive log current
sql alter system archive log current
backup format E:\rmanbackup\orcl_full_%T_%s_%p database plus archivelog delete all input;
backup format E:\rmanbackup\orcl_controlfile_%T_%s_%p current controlfile;
sql alter system archive log current
backup format E:\rmanbackup\orcl_arch_%Y%M%D_%s_%p archivelog all;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
}
生成 pfile 文件
點擊 (此處) 折疊或打開
create pfile= d:\pfile20170721.ora from spfile
目標端創建實例:
點擊 (此處) 折疊或打開
oradim -new -sid orcl
將備份文件、參數文件、密碼文件拷貝至目標端
編輯 pfile 文件,創建相關目錄,修改相關參數(如 sga、pga 等)
點擊 (此處) 折疊或打開
md D:\app\Administrator\admin\orcl\adump
md D:\app\Administrator\admin\orcl\dpdump
md D:\app\Administrator\oradata\orcl
啟動 nomount 階段
點擊 (此處) 折疊或打開
create spfile from pfile= d:\pfile20170721.ora
startup nomount
恢復控制文件:
點擊 (此處) 折疊或打開
– 恢復控制文件,注意修改備份的控制文件名
restore controlfile from D:\rmanbackup\ORCL_CONTROLFILE_20170731_74_1
– 啟動到 mount 階段
sql alter database mount
恢復數據文件:
點擊 (此處) 折疊或打開
catalog start with D:\rmanbackup
– 查看對應數據文件
– 查看對應的表空間、數據文件信息
set lines 150
col tname for a10
col dname for a65
select t.ts#,t.name tname,d.file#,d.name dname,d.status from v$tablespace t,v$datafile d where t.ts#=d.ts#;
– 對數據文件重命名查詢語句
select set newname for datafile ||d.file#|| to ||d.name|| from v$datafile d,v$tablespace t where d.ts#=t.ts# and t.INCLUDED_IN_DATABASE_BACKUP= YES
– 更改目標盤符,這里是 d: 原來為 E
——————————
– 恢復數據文件 跟客戶通過,數據文件目錄 XHLISDB 不變
run{
set newname for datafile 1 to D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
set newname for datafile 2 to D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
set newname for datafile 3 to D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
set newname for datafile 4 to D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
…………
restore database;
switch datafile all;
}
– 修改 redo 位置
點擊 (此處) 折疊或打開
– 查看 redo 路徑
select * from v$logfile;
– 修改 redo 路徑, 查看路徑后,如路徑不對,修改為目標路徑
select alter database rename file ||member|| to ||member|| from v$logfile;
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO002.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO002.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO003.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO003.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO001.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO001.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO004.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO004.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO005.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO005.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO006.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO006.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO007.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO007.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO008.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO008.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO009.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO009.LOG
alter database rename file E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO010.LOG to D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO010.LOG
==================================================================================
開始切換數據庫:
點擊 (此處) 折疊或打開
– 停止原庫監聽,手動切換幾次歸檔
alter system archive log current;
– 確保數據庫數據一致,重啟數據庫實例,再次切換幾次歸檔
alter system archive log current;
– 備份歸檔
backup format E:\rmanbackup\orcl_arch_%T_%s_%p archivelog all
附:使用增量
點擊 (此處) 折疊或打開
– 也可以使用增量的方式(主要相關語句, 具體參考其他文件)
select current_scn from v$database;
BACKUP INCREMENTAL FROM SCN 1013684 DATABASE FORMAT E:\rmanbackup\orcl_incr_%T_%s_%p
backup current controlfile format E:\rmanbackup\orcl_arch_%T_%s_%p
recover database noredo
拷貝文件到目標服務器:
開始恢復:
點擊 (此處) 折疊或打開
catalog start with D:\rmanbackup\ORCL_ARCH_20170721_61_1
list backup of archivelog all;
– 歸檔日志備份最早序號開始
restore archivelog from sequence 57;
– 將數據庫實例恢復至最后一個歸檔文件序號
recover database until sequence 63;
–open
alter database open resetlogs;
– 修改臨時表空間
alter database tempfile D:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP01.DBF drop;
ALTER TABLESPACE TEMP ADD TEMPFILE D:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP01.DBF SIZE 10G autoextend on
注意:通過 oradim 命令創建實例,開機無法自動啟動實例,可修改注冊表修改。ORA_CTY1_AUTOSTART 默認為 false,修改為 true。也可以執行下面命令:
點擊 (此處) 折疊或打開
oradim.exe -NEW -SID orcl -INTPWD oracle -STARTMODE auto -PFILE D:\Agilent\Oracle\Admin\..\initorcl.ora
恢復后,建議進行數據庫、系統相關檢查。
上述內容就是 windows2008 Oracle 如何通過 rman 進行增量遷移,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注丸趣 TV 行業資訊頻道。