【DataGuard】手工冷备搭建 Oracle 11g DataGuard 物理备库


手工冷备搭建 Oracle 11g DataGuard 物理备库

本文通过手工冷备+pfile文件的方式,搭建oracle11g dataguard 物理备库。在搭建前的规划中,特意将主库的数据库名和服务名、 备库的文件存放位置等等做了差异处理。
在进行初始化参数文件的配置时,也进行了最小化处理。这样能够更好的理解DataGuard搭建所需要的的日志传输、应用所需参数配置。


【实验环境】

操作系统:Red Hat Enterprise Linux Server release 5.4
数据库:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0

【DG主库、物理备库结构信息】




【搭建过程】

1、主库上 强记日志

alter database force logging;

所有都记日志,nologging 无效。

防止主库上有操作不记日志。产生主从库差异。


2、创建口令文件 确保日志传输时的权限

主库创建口令文件,scp到从库、修改名称

是远程用户sysdba权限可以登录

echo $ORACLE_SID

orapwd file=$ORACLE_HOME/dbs/orapwBJ password=oracle entries=3 force=y

 

scp到从库


scp orapwBJ shanghai.lxh.net:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/

oracle@shanghai.lxh.net's password:

orapwBJ                                                                        100% 1536     1.5KB/s   00:00   

oracle@beijing.lxh.net:/u01/app/oracle/product/11.2.0/dbhome_1/dbs>

 

从库上改名


 

 

3、【主库的初始化参数】

DB_NAME=DGDB
DB_UNIQUE_NAME=beijing
LOG_ARCHIVE_CONFIG='DG_CONFIG=(beijing,shanghai)'
CONTROL_FILES='/u01/app/oracle/oradata/DGDB/control01.ctl', '/u01/app/oracle/oradata/DGDB/control02.ctl'
LOG_ARCHIVE_DEST_1=
 'LOCATION=/home/oracle/beijing/
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
  DB_UNIQUE_NAME=beijing'
LOG_ARCHIVE_DEST_2=
 'SERVICE=sh ARCH ASYNC NOAFFIRM
  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) 
  DB_UNIQUE_NAME=shanghai'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
 

 

LOG_ARCHIVE_CONFIG='DG_CONFIG=(beijing,shanghai)' 控制心跳

SERVICE=sh      tns,要能连到备库 服务名

ARCH      传递归档

ASYNC    异步传输

NOAFFIRM  从库是否收到主库不用确认

 


如果主库参数中有审计目录等,备库需创建相应目录

在实验情况下,可删除主库、从库 审计和审计目录 删除OMF管理路径

重启数据库 看是否有效


4、主库备份数据文件、日志文件(冷备cp

shutdown immediate;

cd /u01/app/oracle/oradata/DGDB

cp *.dbf /u02/backup/DGDB/

cp *.log /u02/backup/DGDB/

 

 


如果是rman备份,必须要先备份,再创建standby控制文件。

 

5、主库开归档、开库


6、主库生成standby控制文件

alter database create standby controlfile as '/u02/backup/DGDB/control.std';


至此,standby 控制文件 、所有数据文件、redo日志文件 全部在/u02/backup/DGDB目录下。


7、打包压缩后scp到备库 

打包

oracle@beijing.lxh.net:/u02/backup> tar -cvf DGDB.tar DGDB/


压缩 gzip DGDB.tar


scp到备库

scp DGDB.tar.gz shanghai.lxh.net:/u02/oradata/


备库解压 gunzip DGDB.tar.gz


解包 tar –xvf DGDB.tar


改名

 

复制 standby控制文件 生成两个备库的控制文件

 


scp 初始化参数文件pfile到备库 修改文件名
scp beijing.lxh.net:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initBJ.ora $ORACLE_HOME/dbs/

 

mv initBJ.ora initSH.ora

8、【备库初始化参数文件】

控制文件路径

db_unique_name

本地归档路径:log_archive_dest_1=

删除dest_2

添加数据文件、日志文件 位置转换


*.control_files='/u02/oradata/sh/control01.ctl','/u02/oradata/sh/control02.ctl'

DB_NAME=DGDB

DB_UNIQUE_NAME=shanghai

LOG_ARCHIVE_CONFIG='DG_CONFIG=(beijing,shanghai)'

LOG_ARCHIVE_DEST_1=

 'LOCATION=/u02/arch/sh/

  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)

  DB_UNIQUE_NAME=shanghai'

LOG_ARCHIVE_DEST_STATE_1=ENABLE

 

FAL_SERVER=bj
FAL_CLIENT=sh
DB_FILE_NAME_CONVERT='/u01/app/oracle/oradata/DGDB','/u02/oradata/sh'
LOG_FILE_NAME_CONVERT='/u01/app/oracle/oradata/DGDB','/u02/oradata/sh' 
STANDBY_FILE_MANAGEMENT=AUTO


 

FAL_SERVER=bj    如果归档或日志有gap差异,从库向主库请求日志
FAL_SERVER=sh

STANDBY_FILE_MANAGEMENT=AUTO   主库创建文件,从库自动创建。


9、配置监听

主库监听配置 listener

 


LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = beijing.lxh.net)(PORT = 1521))

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

    )

  ) 

 

从库监听配置


 LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = shanghai.lxh.net)(PORT = 1521))    

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

    )

  )

 

 

10、配置tnsnames

主库配一个 tnsnames

从库配两个 tnsnames  

sh =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = shanghai.lxh.net)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = shanghai)

    )

  )

 

bj =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = beijing.lxh.net)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = beijing)

    )

  )


11、启动从库到mount状态

mount 从库


 

查看备库数据库身份

select database_role from v$database;


 

查看主库身份


 

12、从库进行standby recover  开始应用日志

【重启库后需再次执行】

alter database recover managed standby database disconnect from session;



root@shanghai.lxh.net:/root> tail -f /u01/app/oracle/diag/rdbms/shanghai/SH/trace/alert_SH.log


13、验证同步成功

主库切日志组

 

从库跟踪文件

tail –f /u01/app/oracle/diag/rdbms/shanghai/SH/trace/alert_SH.log




【实验总结】

本次实验,使用了手工冷备主库数据文件、scp到备库的方式,一步一步搭建dataguard物理备库。最主要的是突出主库、备库参数文件的配置。

参数文件:主库增加远程归档目录;备库增加FAL挖掘日志GAP、CONVERT进行目录转换。

控制文件:主库生产standby控制文件作为备库的控制文件。
数据文件:备库使用主库冷备的数据文件



吕星昊
2014.8.31


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29475508/viewspace-1260963/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29475508/viewspace-1260963/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值