基於Oracle11gR2 GRID的單實例庫備份恢復

 

1 應用場景:
  
  環境:
       主機名    IP          VIP            SID   DiskGroup
           db1    1.1.1.1    1.1.1.11       alex         DATA1
           db2    1.1.1.2     1.1.1.12      alexdb      DATA2
 
  預期效果:
db1,db2可互爲備份,此處以db1做主庫,db2作爲備庫來講解,即在假定db1掛了,需在db2上mount磁盤組DATA1,DATA2,運行實例alex、alexdb;均採用虛擬IP作爲客戶端的訪問;
 
2  操作步驟:
   一、備份
 
1.在DB2器上預先創建DB1數據庫(alex)的參數文件和pwd文件,同時在 $ORACLE_BASE/admin/$SID目錄下創建adump、dpdump、pfile目錄
在DB1(1.1..1.1)使用oracle用戶操作:
#scp $ORACLE_HOME/dbs/init$SID.ora    1.1.1.2:$ORACLE_HOME/dbs/
# scp $ORACLE_HOME/dbs/orapw$SID.    1.1.1.2:$ORACLE_HOME/dbs/
#scp $ORACLE_HOME/dbs/spfile$SID.ora    1.1.1.2:$ORACLE_HOME/dbs/
#ssh 1.1.1.2   mkdir -p $ORACLE_BASE/admin/$SID/adump
#ssh 1.1.1.2 mkdir -p $ORACLE_BASE/admin/$SID/dpdump
#ssh 1.1.1.2mkdir -p $ORACLE_BASE/admin/$SID/hdump
#ssh 1.1.1.2   mkdir -p $ORACLE_BASE/admin/$SID/pfile
 
2.在DB2上mount磁盤組;
 #sqlplus / as sysasm
 sql>alter diskgroup data1 mount;
 
 
3.在DB2增加網絡監聽;
 linux :增加第二地址:ifconfig eth0:1 1.1.11/24 up         
 HP:增加第二地址: ifconfig lan0:1 inet 1.1.1.11 netmask 255.255.255.0 up
 AIX:   增加第二地址:ifconfig en9 1.1.1.1 netmask 255.255.255.0 alias 
          ifconfig en9 1.1.1.1 netmask 255.255.255.0 delete #刪除地址 
          #add to /etc/rc.net 開機自啓動;
4.在DB2添加磁盤組到asm的參數文件;(可選)
alter system set asm_diskgroups='data1' scope=spfile;
5.在DB2加入到當前GRID組中;
 使用oracle用戶:
#srvctl add db -d alex -o $ORACLE_HOME
 
6.在DB2啓動數據庫:
       方式1
        #srvctl start db -d alex
 方式2
 1)修改ORACLE_SID爲故障庫的sid
 2)sqlplus / as sysdba
    >startup
 
二、恢復:
    1)在DB2上停止
       #stop db -d alex
    2)在DB2剔除Grid組
       #srvctl remove db -d alex
   3)在DB2上umount數據磁盤組
     #sqlplus as sysasm
    >alter diskgroup data1 dismount  
   4)在DB2剔除磁盤組
     #srvctl remove diskgroup -g data1
  
   5)在DB1重新mount,啓動數據庫
     #alter diskgroup data1 mount
     #sqlplus / as sysdba
     >startup
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章