时间:2021-07-01 10:21:17 帮助过:37人阅读
Oracle作为目前最流行的商业数据库,除了单独数据库DBMS之外,还针对实际运维系统需求,提供了一系列高可用HA解决方案。这其中,
Oracle作为目前最流行的商业数据库,除了单独数据库DBMS之外,还针对实际运维系统需求,提供了一系列高可用HA解决方案。这其中,RAC+Dataguard是我们最常见的HA策略方案,也是普遍认为成熟的策略。
Data Guard在11G中有了很大的发展,最典型的两个特性就是Active Data Guard和Advanced Compression引入。传统Data Guard的Physical Standby结点在进行Redo Apply过程中,是不能打开数据库读取数据的。如果需要进行读取,则必须先将其终止Apply过程,才能支持Redo Apply。Active Data Guard特性就是支持Standby结点在Apply的同时支持只读数据库。这也就是为什么11G之后,很多企业选择DG作为读写分离策略的技术手段。
Advanced Compression是一个综合技术,在Data Guard中也有AC的过程。远程灾备使用Data Guard的一种重要瓶颈就是传输带宽限制。所有的Redo Log数据都要通过Primary与Standby之间的连接进行传递,过量Redo Log会限制灾备数据同步程度。Advanced Compression可以将Redo Log进行一定程度压缩,提高同步率。
本篇主要介绍在11gR2版本中,使用RMAN的duplicate from active database的新方法进行搭建。注意:从10g开始,有其他手段搭建DG。
相关参考:
Oracle Data Guard 重要配置参数
基于同一主机配置 Oracle 11g Data Guard
探索Oracle之11g DataGuard
Oracle Data Guard (RAC+DG) 归档删除策略及脚本
Oracle Data Guard 的角色转换
Oracle Data Guard的日志FAL gap问题
Oracle 11g Data Guard Error 16143 Heartbeat failed to connect to standby 处理方法
1、环境介绍
我们选择操作系统为Red Hat 6.5版本,磁盘空间充足。
[root@SimpleLinux ~]# cat /etc/RedHat-release
Red Hat Enterprise Linux Server release 6.5 (Santiago)
[root@SimpleLinux ~]# uname -r
2.6.32-431.el6.i686
[root@SimpleLinux ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 48G 13G 33G 28% /
tmpfs 947M 0 947M 0% /dev/shm
当前数据库名称ora11g,环境变量如下:
[oracle@SimpleLinux ~]$ env | grep ORA
ORACLE_SID=ora11g
ORACLE_BASE=/u01/app
ORACLE_HOME=/u01/app/oracle
由于是实验环境,笔者在同一台机器上搭建Data Guard。不同服务器上操作方法相同。数据库版本为最新的11.2.0.4。
SQL> select * from v$version;
BANNER
------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
PL/SQL Release 11.2.0.4.0 - Production
CORE 11.2.0.4.0 Production
数据库三大文件:控制文件、日志文件(Online)和数据文件遵守OMF(Oracle Managed File)策略。
SQL> select name from v$controlfile;
NAME
---------------------------------------------
/u01/app/oradata/ORA11G/controlfile/o1_mf_9mnjwpko_.ctl
/u01/app/fast_recovery_area/ORA11G/controlfile/o1_mf_9mnjwpw2_.ctl
SQL> select group#, member from v$logfile;
GROUP# MEMBER
---------- --------------------------------------------------------------------
3 /u01/app/oradata/ORA11G/onlinelog/o1_mf_3_9mnjx4n0_.log
3 /u01/app/fast_recovery_area/ORA11G/onlinelog/o1_mf_3_9mnjx54c_.log
2 /u01/app/oradata/ORA11G/onlinelog/o1_mf_2_9mnjwzpq_.log
2 /u01/app/fast_recovery_area/ORA11G/onlinelog/o1_mf_2_9mnjx15f_.log
1 /u01/app/oradata/ORA11G/onlinelog/o1_mf_1_9mnjwtj9_.log
1 /u01/app/fast_recovery_area/ORA11G/onlinelog/o1_mf_1_9mnjwvdm_.log
6 rows selected
SQL> select file_name from dba_data_files;
FILE_NAME
-----------------------------------
/u01/app/oradata/ORA11G/datafile/o1_mf_users_9mnjs074_.dbf
/u01/app/oradata/ORA11G/datafile/o1_mf_undotbs1_9mnjs068_.dbf
/u01/app/oradata/ORA11G/datafile/o1_mf_sysaux_9mnjs04h_.dbf
/u01/app/oradata/ORA11G/datafile/o1_mf_system_9mnjrzty_.dbf
当前数据库位于非归档模式。
SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 4
Current log sequence 6
注意:OMF是Oracle推荐的一种文件管理策略。传统的文件管理是管理员直接指定文件目录和名称,而OMF下是不需要指定文件的。而且,如果配置了Recovery Area目录,Oracle OMF会将两大镜像文件,online redo log和control file镜像存放在Recovery Area中。
当前配置了Recovery Area支持。
SQL> show parameter recover
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /u01/app/fast_recovery_area
db_recovery_file_dest_size big integer 10000M
db_unrecoverable_scn_tracking boolean TRUE
recovery_parallelism integer 0
实验目标是建立ora11g的physical standby数据库,实例名称ora11gsy。
2、数据库Primary Database配置
Data Guard是要求在Primary Database端进行配置要求的。具体包括如下:
ü 归档模式切换。Data Guard运行的基础是Redo Log传输,Primary Database要求进行归档模式配置;
ü Force Logging配置,确保Redo Log生成完整性;
ü Standby Log创建;
ü 主库参数配置;
修改归档模式,切换到归档日志方式。默认情况下,如果开启recovery area,归档日志是会放在recovery area中的。
SQL> alter database archivelog;
Database altered.
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 4
Next log sequence to archive 6
Current log sequence 6