Oracle 11g R2基于GRID的单实例库备份恢复


1 应用场景:
 
  环境:
       主机名    IP          VIP            SID   DiskGroup
           db1    1.1.1.1    1.1.1.11       bkjia         DATA1
           db2    1.1.1.2     1.1.1.12      bkjiadb      DATA2
 
  预期效果:
db1,db2可互为备份,此处以db1做主库,db2作为备库来讲解,即在假定db1挂了,需在db2上mount磁盘组DATA1,DATA2,运行实例bkjia、bkjiadb;均采用虚拟IP作为客户端的访问;
 
2  操作步骤:
   一、备份
 
1.在DB2器上预先创建DB1数据库(bkjia)的参数文件和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 bkjia -o $ORACLE_HOME
 
6.在DB2启动数据库:
       方式1
        #srvctl start db -d bkjia
 方式2
 1)修改ORACLE_SID为故障库的sid
 2)sqlplus / as sysdba
    >startup
 
二、恢复:
    1)在DB2上停止
       #stop db -d bkjia
    2)在DB2剔除Grid组
       #srvctl remove db -d bkjia
   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

更多Oracle相关信息见Oracle 专题页面 http://www.bkjia.com/topicnews.aspx?tid=12

相关内容