Data Guard Broker基于分布式的管理框架,可以用来集中创建,管理,配置和监控oracle data guard; Data Guard Broker的组件:
客户端:Oracle grid control和命令行工具DGMGRL
服务端:DMON进程和配置文件
DMON进程的作用: 响应用户的请求,更新broker的配置文件,和data guard配置中的其他服务器通信
Data Guard Broker配置要求:
数据库版本为:企业版10G R1以上,可以是单实例或者rac环境;
在主库和备库上的COMPATIBLE参数必须设定为9.2.0或更高;
必须有oracle网络支持,必须配置LOCAL_LISTENER静态监听器注册(非1521端口必须);
GLOBAL_DBNAME属性必须设定为db_uniquename_DGMGRL.db_domain;
DG_BROKER_START参数要设置为TRUE;
主库必须运行在归档模式;
使用spfile来保证broker的配置文件和服务器初始化参数文件的一致;
所有的数据库必须在mount(物理备库)或者open(主库和逻辑备库)状态;
在rac环境下还需要配置DB_BROKER_CONFIG_FILEn参数,将该参数指定共享存储上;
rac环境下,需要在OCR中要设定start_options参数为mount;
下边是具体的一些参数配置,供大家参考。
1. 检查并设置相关参数.
SQL> show parameter broker
--如果dg_broker_start为False,就将其改为True.
alter system set dg_broker_start = true scope=both;
2. 调整listener配置,添加listener相关监听项.
1).standby ibangr 上的配置变更为
--变化前的配置.
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_NAME=ibangr)
(SID_NAME=ibangr1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
)
--变化后的配置.
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_NAME=ibangr)
(SID_NAME=ibangr1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
(SID_DESC=
(GLOBAL_NAME=ibangr_DGMGRL)
(SID_NAME=ibangr1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
)
--修改完毕之后,运行lsnrctl reload 配置.
2).primary ibangw 的listener 配置也做类似的处理
--变化前的配置.
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_NAME=ibangw)
(SID_NAME=ibangw1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
)
--变化后的配置
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_NAME=ibangw)
(SID_NAME=ibangw1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
(SID_DESC=
(GLOBAL_NAME=ibangw)
(SID_NAME=ibangw1)
(ORACLE_HOME=/opt/app/oracle/products/11.2.0)
)
)
--配置完毕之后, 运行lsnrctl reload加载新配置.
3. 运行dgmgrl命令创建broker 相关配置.
--创建基于主库的broker 配置.
DGMGRL> create configuration dgconfig1
as primary database is ibangw
connect identifier is ibangw;
Configuration "dgconfig1" created with primary database "dbmain"
--添加standby db的broker配置.
DGMGRL> add database ibangr as connect identifier is ibangr maintained as physical;
Database "dbstby" added
--显示添加好之后的配置.
DGMGRL> show configuration;
Configuration - dgconfig1
Protection Mode: MaxAvailability
Databases:
dbmain - Primary database
dbstby - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
DISABLED
--激活配置并重新显示配置.
DGMGRL> enable configuration;
Enabled.
DGMGRL> show configuration;
Configuration - dgconfig1
Protection Mode: MaxAvailability
Databases:
dbmain - Primary database
dbstby - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
45 DGMGRL>
--显示primary database的信息.
DGMGRL> show database ibangw;
Database - dbmain
Role: PRIMARY
--显示standby database的信息.
61 DGMGRL> show database ibangr;
Intended State: APPLY-ON --是否正在apply.
Transport Lag: 0 seconds --log transport delay
Apply Lag: 0 seconds --log apply delay
Real Time Query: ON --是否打开read time apply
Instance(s):