oracle10G的異機恢復實驗

本次異機恢復測試實驗室基於centos6.4+oracle10G的環境中完成的

其中兩臺機器的目錄結構都是一樣的
oracle用戶的環境變量的設置都是
ORACLE_BASE=/u01/app
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=orcl

PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

DISPLAY=192.168.11.1:0.0

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH DISPLAY

源機器:192.168.11.128     安裝了數據庫實例和數據庫orcl
目的機器:192.168.11.129    只是安裝了數據庫實例

1 以oracle在 /u01目錄下創建一個備份目錄 backup   mkdir /u01/backup

2 使用rman命令對數據庫進行備份(如果數據庫沒open,請先startup) 其中備份腳本是

  run{
    allocate channel c1 device type disk;
    backup
    format '/u01/backup/db_full_%U.bkp'
    tag '2013-10-21'
    database plus archivelog;
    release channer c1;
  }

 3 備份控制文件
    backup current controlfile format '/u01/backup/control2013-10-21.bak';

  4 備份參數文件spfile
    backup spfile format '/u01/backup/spfile2013-10-21.bak';
 
  5 在目標服務器上覆製備份數據,並且創建相同的目錄結構(以oracle用戶)

    mkdir /u01/backup
   
    scp -rp 192.168.11.128:/u01/backup/* /u01/backup/

  6 創建目錄結構
   
    mkdir -p /u01/app/admin/oracle/{adump,bdump,cdump,dpdump,udump,pfile}

    mkdir -p /u01/app/oradata/orcl

    mkdir -p /u01/app/flash_recover_area/ORCL

  7 開始進行恢復 設置oracle_sid和創建最簡單的initorcl.ora參數文件
    echo 'db_name=orcl' > $ORACLE_HOME/dbs/initorcl.ora
    export ORACLE_SID=orcl;
  8 使用rman命令連接,設置好dbid,並且啓動至nomount狀態
     使用rman命令連接
     rman target /
     設置好dbid,與源服務器上的oracle數據庫的dbid一致
     set dbid 1357230443
     利用initorcl.ora啓動數據庫至nomount狀態
     startup nomount;
     恢復參數文件
     restore spfile from '/u01/backup/spfile20131021.bak';
     利用spfileorcl.ora啓動數據庫至nomount狀態
     startup nomount force;
     恢復控制文件
     restore controlfile from '/u01/backup/control20131021.bak';
     恢復數據文件
     restore database;
     exit
   
   9在已經恢復數據文件的基礎上,進行數據庫的恢復
   
    使用dba權限連接到數據庫的sqlplus
    sqlplus / as sysdba
    recover database using backup controlfile until cancel;

    然後在對話命令行輸入 cancel

     打開數據庫,並且重置聯機歸檔日誌
     alter database open resetlogs;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章