Oracle RAC 11g DG Broker配置和测试

之前在《RHEL6.4 + Oracle 11g DG测试环境快速搭建参考》已经简单说过。

本篇在实验环境中实际配置

环境: RHEL 6.5 + Oracle 11.2.0.4 GI、DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes)

该实验环境的搭建可参考:模拟生产搭建Standby RAC实验环境(11.2.0.4 DG)

配置并测试DG Broker步骤:

1.停止MRP

在备库停止MRP:

alter database recover managed standby database cancel;

2.修改 Listener.ora 文件

在各个节点grid用户的监听文件中,

[grid@jyrac1 ~]$ cd $ORACLE_HOME/network/admin
[grid@jyrac1 admin]$ vi listener.ora

分别增加以下内容:

--Primary Node1
SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao1)(GLOBAL_DBNAME=jyzhao_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1))) --Primary Node2 SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao2)(GLOBAL_DBNAME=jyzhao_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1))) --Standby Node1 SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao1)(GLOBAL_DBNAME=mynas_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1))) --Standby Node2 SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao2)(GLOBAL_DBNAME=mynas_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1)))

注:因为我这里的环境之前没有配置其他的静态监听,而且默认使用的监听名字是LISTENER,所以,只需要直接添加这一行配置即可。

添加完毕后分别在各节点重新启动监听:

--@all nodes
lsnrctl stop
lsnrctl start

3.修改参数文件

检查当前DG_BROKER_CONFIG_FILE和dg_broker_start配置:

--ON Primary:

SYS@jyzhao1 >show parameter dg_broker

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr1jyzhao.dat
dg_broker_config_file2 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr2jyzhao.dat
dg_broker_start boolean FALSE --ON Standby: SQL> show parameter dg_broker NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr1mynas.dat
dg_broker_config_file2 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr2mynas.dat
dg_broker_start boolean FALSE

需要把DG Broker配置文件的默认路径修改到ASM磁盘上,并将dg_broker_start修改为TRUE,具体操作如下:

--ON Primary:
ASMCMD>
mkdir +fra1/jyzhao/DATAGUARDCONFIG
mkdir +data1/jyzhao/DATAGUARDCONFIG SQL>
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1='+fra1/jyzhao/DATAGUARDCONFIG/dgb_config1.ora' SCOPE=BOTH sid='*';
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2='+data1/jyzhao/DATAGUARDCONFIG/dgb_config2.ora' SCOPE=BOTH sid='*';
alter system set dg_broker_start=true scope=both sid='*';
show parameter dg_broker --ON Standby:
ASMCMD>
mkdir +fra/mynas/DATAGUARDCONFIG
mkdir +data/mynas/DATAGUARDCONFIG SQL>
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1='+fra/mynas/DATAGUARDCONFIG/dgb_config1.ora' SCOPE=BOTH sid='*';
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2='+data/mynas/DATAGUARDCONFIG/dgb_config2.ora' SCOPE=BOTH sid='*';
alter system set dg_broker_start=true scope=both sid='*';
show parameter dg_broker

此时,主备库的alert告警日志中都会有启动DG Broker的信息:

Sun Aug 13 16:45:27 2017
DMON started with pid=41, OS id=7432
Starting Data Guard Broker (DMON)
Sun Aug 13 16:45:49 2017
INSV started with pid=54, OS id=7459

4.创建配置

dgmgrl sys/oracle
在dgmgrl下创建配置:

CREATE CONFIGURATION 'jydb' AS PRIMARY DATABASE IS 'jyzhao' CONNECT IDENTIFIER IS 'jyzhao';
ADD DATABASE 'mynas' AS CONNECT IDENTIFIER IS 'mynas';

实际操作如下:

DGMGRL> CREATE CONFIGURATION 'jydb' AS PRIMARY DATABASE IS 'jyzhao' CONNECT IDENTIFIER IS 'jyzhao';
Configuration "jydb" created with primary database "jyzhao" DGMGRL> ADD DATABASE 'mynas' AS CONNECT IDENTIFIER IS 'mynas';
Database "mynas" added

5.启用配置

在dgmgrl下启用配置,查看配置:

enable configuration;
show configuration;
show database verbose jyzhao

实际操作如下:

DGMGRL> enable configuration;
Enabled. DGMGRL> show configuration; Configuration - jydb Protection Mode: MaxPerformance
Databases:
jyzhao - Primary database
mynas - Physical standby database Fast-Start Failover: DISABLED Configuration Status:
SUCCESS DGMGRL> show database verbose jyzhao Database - jyzhao Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
jyzhao1
jyzhao2 Properties:
DGConnectIdentifier = 'jyzhao'
ObserverConnectIdentifier = ''
LogXptMode = 'ASYNC'
DelayMins = '0'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
PreferredApplyInstance = ''
ApplyInstanceTimeout = '0'
ApplyParallel = 'AUTO'
StandbyFileManagement = 'AUTO'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '4'
LogArchiveMinSucceedDest = '1'
DbFileNameConvert = '+data/mynas, +data1/jyzhao'
LogFileNameConvert = '+data/mynas, +data1/jyzhao, +fra/mynas, +fra1/jyzhao'
FastStartFailoverTarget = ''
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
SendQEntries = '(monitor)'
LogXptStatus = '(monitor)'
RecvQEntries = '(monitor)'
ApplyLagThreshold = '0'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '30'
SidName(*)
StaticConnectIdentifier(*)
StandbyArchiveLocation(*)
AlternateLocation(*)
LogArchiveTrace(*)
LogArchiveFormat(*)
TopWaitEvents(*)
(*) - Please check specific instance for the property value Database Status:
SUCCESS DGMGRL>

附一些常用的命令汇总:

show configuration;
show database jyzhao;
show database mynas;
show database verbose jyzhao;
show database verbose mynas;
show instance verbose jyzhao1 on database jyzhao;
show instance verbose jyzhao2 on database jyzhao;
show instance verbose jyzhao1 on database mynas;
show instance verbose jyzhao2 on database mynas;

这些常用命令的输出结果大家可以在自己的实验环境测试一下,我这里就不赘述了。

6.切换测试

我们配置DG Broker主要就是为了方便切换,在配置正确的环境中,只需要一条命令就可以switchover成功。
在dgmgrl下切换测试:

--一条命令完成switchover主备切换:
switchover to mynas; --一条命令完成switchover主备切回:
switchover to jyzhao;

来看看实际DG Broker的强大功能,以主备切换为例:

[oracle@jyrac1 ~]$ dgmgrl sys/oracle
DGMGRL for Linux: Version 11.2.0.4.0 - 64bit Production Copyright (c) 2000, 2009, Oracle. All rights reserved. Welcome to DGMGRL, type "help" for information.
Connected.
DGMGRL> switchover to mynas;
Performing switchover NOW, please wait...
Operation requires a connection to instance "jyzhao2" on database "mynas"
Connecting to instance "jyzhao2"...
Connected.
New primary database "mynas" is opening...
Operation requires startup of instance "jyzhao1" on database "jyzhao"
Starting instance "jyzhao1"...
ORACLE instance started.
Database mounted.
Database opened.
Switchover succeeded, new primary is "mynas"

整个过程一条简单命令实现,这相当于我之前手工切换《Oracle 11g DG手工switchover切换标准化流程》做的所有功能。

有了配置正确的DG Broker,老板再也不用担心员工去switchover切换搞的手忙脚乱了哈~

Oracle RAC 11g DG Broker配置和测试的更多相关文章

  1. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.6.重新配置与缷载11R2 Grid Infrastructure

    1.[root@linuxrac1 ~]# /u01/app/oraInventory/orainstRoot.sh 2.[root@linuxrac2 ~]# /u01/app/oraInvento ...

  2. Linux 上Oracle RAC 10g 升级到 Oracle RAC 11g

    了解如何在 Oracle Enterprise Linux 5 上逐步将 Oracle RAC 10g 第 2 版升级到 Oracle RAC 11g. Oracle 数据库 11g(即,新一代网格计 ...

  3. 安装Oracle RAC 11g

    1.Oracle Enterprise Linux 和 iSCSI 上构建 Oracle RAC 11g 集群 2.Oracle RAC 的所有共享磁盘存储将基于 iSCSI,iSCSI 使用在第三个 ...

  4. 【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)

    Oracle 11G RAC数据库安装(九) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总 ...

  5. 【转】【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)

    原文地址:http://www.cnblogs.com/baiboy/p/orc9.html   阅读目录 目录 检查RAC状态 检查创建的数据库 全部参考文献 相关文章 Oracle 11G RAC ...

  6. 如何获得 oracle RAC 11g asm spfile S档

     方法一: [root@vmrac1 ~]# su - grid [grid@vmrac1 ~]$ sqlplus / as sysasm SQL*Plus: Release 11.2.0.3.0 ...

  7. ORACLE RAC 11G 更改 /etc/hosts文件

    来自官方文档:()Can I change the public hostname in my Oracle Database 10g Cluster using Oracle Clusterware ...

  8. KFS Oracle RAC 数据解析同步配置方法

    一.logminer方式解析 1.数据库配置 - Oracle 1. 数据库中需要先设置 NSL_DATE_FORMAT,命令如下,设置好以后需要重启数据库: ALTER SYSTEM SET NLS ...

  9. oracle RAC的客户端HA配置

    在ORACLE 9i RAC 环境下,为了做到高可用性,需要对客户端的tnsnames.ora这个文件进行配置,在oracle中这样的配置叫做TAF,这个配置不能使用NETCA配置程序生成.其中ORA ...

随机推荐

  1. 我的IT开源之路

    我开通博客这么久也从没有写过什么,那时只是喜欢看别人的技术博客,然后转发到我的私人空间有空时候读一读.这几年下来,我关注了有几百个博客.公众号.头条号.新浪微博等等,里面有无数的好文章.但是,一直也没 ...

  2. Kafka 源代码分析之LogManager

    这里分析kafka 0.8.2的LogManager logmanager是kafka用来管理log文件的子系统.源代码文件在log目录下. 这里会逐步分析logmanager的源代码.首先看clas ...

  3. [leetcode-598-Range Addition II]

    Given an m * n matrix M initialized with all 0's and several update operations. Operations are repre ...

  4. 【Android Developers Training】 73. 布局变化的动画

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  5. 经验之谈——gulp使用教程

    gulp的最实用教程 使用gulp编译less.sass.压缩js等常用功能讲解 gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多 ...

  6. pouchdb-find( pouchdb查询扩展插件 ,便于查询)

    pouchdb-find pouchdb-find 环境搭建 下载lib bower install pouchdb-find 引入js <script src="pouchdb.js ...

  7. Spring Security-自定义配置Filter

    自定义配置Filter 一.最基础的配置 SecurityContextPersistenceFilter 用来建立 SecurityContext,而它被用来贯穿整个 request 过程以跟踪请求 ...

  8. powerdesinger(MSSQLSRV2008测试通过)通过Name或comment 导出注释到sql脚本,生成sql的说明备注,包括表注释信息

    导出字段信息name注释到sql2008字段的说明 在database -> edit current dbms -> MSSQLSRV2008::Script\Objects\Colum ...

  9. js模块化/js模块加载器/js模块打包器

    之前对这几个概念一直记得很模糊,也无法用自己的语言表达出来,今天看了大神的文章,尝试根据自己的理解总结一下,算是一篇读后感. 大神的文章:http://www.css88.com/archives/7 ...

  10. windows平台python 2.7环境编译安装zbar

    最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本上弄明白,分享出来给大家. 一.zbar官方介绍 ZBar 是款桌面电脑用条形码/二维码扫描工具,支持摄像头及图 ...