使用RMAN遷移資料庫到異機

來源:互聯網
上載者:User

遷移資料庫的方法有多種,較為常用的則是使用RMAN來遷移。使用RMAN遷移資料庫屬於資料庫的物理備份與恢複範疇,整個過程中資料庫的相關資訊是完整地鏡像。因此,基於此種方式還原恢複的資料庫用於測試會使得與真實的生產環境差異相對較小。本文描述了使用RMAN來還原Oracle 10g資料庫的過程。

一、主要步驟

1、備份資料庫
2、ftp備份到目的伺服器
3、為目標資料庫建立項目目錄
4、為目標資料庫建立pfile或spfile(使用RMAN還原或複製原pfile到目的伺服器)
5、還原控制檔案
6、還原資料檔案
7、OPEN 資料庫

其實,這幾個步驟比較好理解,整個實質是對資料庫體繫結構以及資料庫整個啟動過程的理解。

關於體繫結構和啟動過程可以參考

Oracle執行個體和Oracle資料庫(Oracle體繫結構)
Oracle 資料庫執行個體啟動關閉過程

下面對此進行一下描述

a、首先需要為執行個體的運行環境建立相應的目錄,如dump位置,datafile位置,以及archive位置等等
如果是恢複到不同的路徑,則後續RMAN時需要使用set newname for datafile 方式更新到控制檔案
b、執行個體需要pfile來啟動,因此需要恢複pfile或spfile,然後將資料庫切換到nomount狀態
c、接下來的一步是通過控制檔案將資料庫切換到mount狀態,因此需要恢複控制檔案,然後再mount
d、mount之後就可以對資料庫進行還原(restore)操作
e、還原完畢之後是對資料庫進行恢複(recovery)操作(restore和recover需要基於控制檔案的備份資訊或恢複目錄)
f、最後是open資料庫

二、遷移示範

1、備份原資料庫

此處示範的來源資料庫與目標資料庫使用相同的版本為Oracle 10g R2(10.2.0.3),作業系統都為SUSE 10 +Sp3

備份過程略,有關備份指令碼,請參考:Linux 下RMAN備份shell指令碼

2、ftp所有的備份檔案到需要恢複的伺服器上

打包整個備份組ftp到目標伺服器或scp到目標伺服器

下面是ftp到目標伺服器解壓後包含的檔案

  1.   oracle@2go-devDB01uv:/u02/database/SY5221_RMAN/20121013> ls -hltr 
  2.   total 9.4G 
  3.   -rw-r--r-- 1 oracle oinstall 3.0K 2012-10-16 09:48 initSY5221.ora 
  4.   -rw-r--r-- 1 oracle oinstall 2.7G 2012-10-16 10:02 SY5221_lev0_201210130630_4unnkjvi_1_1 
  5.   -rw-r--r-- 1 oracle oinstall 3.1G 2012-10-16 10:04 SY5221_lev0_201210130630_4vnnkjvi_1_1 
  6.   -rw-r--r-- 1 oracle oinstall 938M 2012-10-16 10:07 SY5221_lev0_201210130630_arc_51nnkk2h_1_1 
  7.   -rw-r--r-- 1 oracle oinstall 935M 2012-10-16 10:08 SY5221_lev0_201210130630_arc_52nnkk2h_1_1 
  8.   -rw-r--r-- 1 oracle oinstall 930M 2012-10-16 10:10 SY5221_lev0_201210130630_arc_53nnkk31_1_1 
  9.   -rw-r--r-- 1 oracle oinstall  15M 2012-10-16 10:10 SY5221_lev0_cntl_bak_c-1468911009-20121013-00 
  10.   -rw-r--r-- 1 oracle oinstall  15M 2012-10-16 10:10 SY5221_lev0_cntl_bak_c-1468911009-20121013-01 
  11.   -rw-r--r-- 1 oracle oinstall 910M 2012-10-16 10:11 SY5221_lev0_201210130630_arc_54nnkk32_1_1 

3、建立所需的目錄(使用oracle使用者) 

  1.   oracle@2go-devDB01uv:~> more mkdir_sy5221.sh 
  2.   mkdir -p /u02/database/SY5221/flash_recovery_area 
  3.   mkdir -p /u02/database/SY5221 
  4.   mkdir -p /u02/database/SY5221/archive 
  5.   mkdir -p /u02/database/SY5221/backup 
  6.   mkdir -p /u02/database/SY5221/bdump 
  7.   mkdir -p /u02/database/SY5221/cdump 
  8.   mkdir -p /u02/database/SY5221/udump 
  9.   mkdir -p /u02/database/SY5221/controlf 
  10.   mkdir -p /u02/database/SY5221/oradata 
  11.   mkdir -p /u02/database/SY5221/redolog 
  12.   mkdir -p /u02/database/SY5221/undo 
  13.   mkdir -p /u02/database/SY5221/temp 
  14.   mkdir -p /u02/database/SY5221/ref_data 
  15.   mkdir -p /u02/database/SY5221/BNR 
  16.   mkdir -p /u02/database/SY5221/BNR/full 
  17.   mkdir -p /u02/database/SY5221/BNR/dump 
  18.   mkdir -p /u02/database/SY5221/dbcreatelogs 
  19.    
  20.   ORACLE_SID=SY5221; export ORACLE_SID 
  21.   oracle@2go-devDB01uv:~> chmod u+x mkdir_sy5221.sh 
  22.   oracle@2go-devDB01uv:~> ./mkdir_sy5221.sh 

4、建立密碼檔案 

  1.   oracle@2go-devDB01uv:~> cd $ORACLE_HOME/dbs 
  2.   oracle@2go-devDB01uv:~/OraHome10g/dbs> orapwd file=orapwSY5221 password=oracle force=y entries=10 
  • 1
  • 2
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.