使用rman遷移資料庫到異機

2021-09-07 08:27:30 字數 3501 閱讀 6488

遷移資料庫的方法有多種,較為常用的則是使用rman來遷移。使用rman遷移資料庫屬於資料庫的物理備份與恢復範疇,整個過程中資料庫的相關資訊是完整地映象。因此,基於此種方式還原恢復的資料庫用於測試會使得與真實的生產環境差異相對較小。

一、主要步驟

1、備份資料庫

2、拷貝備份到目的伺服器

3、為目標資料庫建立專案目錄

4、為目標資料庫建立pfile或spfile(使用rman還原或複製原pfile到目的伺服器)

5、還原控制檔案

6、還原資料檔案

7、open 資料庫

二、遷移演示

目的:將在一台機器的orcl資料庫遷移到另一台機器上

1. 備份資料庫:

備份指令碼參考:rman的實戰篇--備份指令碼

2. 將用ramn備份的檔案拷貝到目標伺服器上。

這裡使用scp的方式拷貝到異機

scp -r 20161231

/ [email protected]:/u02/

database

/orcl/

backup

/rman/

3. 建立目錄

mkdir -p /u01/orcl/onlinelog/

mkdir -p /u02/orcl/onlinelog/

mkdir -p /u03/orcl/onlinelog/

4.建立密碼檔案

[

oracle@oracledb ~

]$ orapwd file

=orapworcl password=oracle force=y entries=

10

5、使用pfile啟動例項到nomount狀態 

[

oracle@oracledb dbs

]$ cp /u02/

database

/orcl/

backup

/rman/

20161231

/initorcl.ora $oracle_home/

dbs[

oracle@oracledb dbs

]$ export oracle_sid=

orcl

sql> startup nomount;

注意檢查引數檔案中的目錄是否都建立了。

6. 恢復控制檔案並切換到mount狀態

rman>

restore controlfile from

'/u02/database/orcl/backup/rman/20161231/cntl_lev0.bak';

啟動 restore 於 30

-12月-

16使用通道 ora_disk_1

通道 ora_disk_1: 已複製控制檔案副本

輸出檔名

control01.ctl

輸出檔名

control02.ctl

完成 restore 於 30

-12月-

16rman

>

alter

database

mount;

資料庫已裝載

釋放的通道: ora_disk_1

7. 指定備份檔案所在目錄 

rman> catalog start with

'/u02/database/orcl/backup/rman/20161231

';

8. 還原資料庫 

rman>

restore

database;

9.恢復資料庫 

sql> conn /

assysdba

sql> recover database

until cancel;

ora-

00283: recovery session canceled due to

errors

ora-

01610: recovery using the backup controlfile option

must be done

sql> recover database using backup

controlfile until cancel;

********

....

specify

log:

cancel #輸入cancel,完成介質恢復

media recovery cancelled.

10. open資料庫

sql>

alter

database

open resetlogs;

11.一致性關閉資料庫並重啟資料庫

sql>

shutdown

immediate;

sql> startup

#如果open 不成功,請嘗試shutdown 之後再次open,如果仍然不成功使用隱藏引數_allow_resetlogs_corruption開啟資料庫

sql>

alter system set "_allow_resetlogs_corruption"=true scope=

spfile;

system altered.

sql>

startup force

oracle instance started.

total system global area

285212672

bytes

fixed size

1218992

bytes

variable size

88082000

bytes

database buffers 192937984

bytes

redo buffers

2973696

bytes

database

mounted.

ora-

01589: must use resetlogs or noresetlogs option

fordatabase

open

sql>

alter

database

open

resetlogs;

database

altered.

sql>

alter system set "_allow_resetlogs_corruption"=false scope=

spfile;

system altered.

sql> shut immediate

通過RMAN 異機轉殖資料庫

使用rman進行複製時,rman會連線目標資料庫和輔助例項,如果使用了catalog備份的還會連線恢復目錄。rman連線了目標資料庫才能夠訪問其控制檔案中記錄的備份的詳細資訊,連線輔助例項才能夠在輔助例項上分配乙個或多個通道程序,9i開始會自動建立通道 要連線輔助例項就先要啟動輔助例項,就需要乙個p...

rman異機恢復資料庫

實驗環境 源資料庫伺服器名 china 資料庫全域性名和sid orcl 目標資料庫伺服器名 beijing 只安資料庫軟體,未新建資料庫 1.源資料庫備份資料並拷貝到目標資料庫伺服器 2.目標資料庫上建立service服務 oradim new sid orcl 3.使用源資料庫的spfile生成...

rman異機恢復資料庫

實驗環境 源資料庫伺服器名 china 資料庫全域性名和sid orcl 目標資料庫伺服器名 beijing 只安資料庫軟體,未新建資料庫 1.源資料庫備份資料並拷貝到目標資料庫伺服器 2.目標資料庫上建立service服務 oradim new sid orcl 3.使用源資料庫的spfile生成...