ORACLE ADG如何自动管理切换?

在生产环境中,很多情况下手工管理ADG都很耽误时间,如何做到自动管理和切换?

参与40

2同行回答

haizdlhaizdl技术经理大连
多数还是自己写脚本。例如以下link中的工具,如果想真正用好还得花些力气去优化:http://www.talkwithtrend.com/Question/228939还有一种方式,就是利用oracle oem 可以实现切换过程自动化。管理实现自动化,风险性比较高。涉及到容灾决策的事情是比较复杂的事情,不是单一技术层...显示全部
  1. 多数还是自己写脚本。例如以下link中的工具,如果想真正用好还得花些力气去优化:
    http://www.talkwithtrend.com/Question/228939
  2. 还有一种方式,就是利用oracle oem 可以实现切换过程自动化。
  3. 管理实现自动化,风险性比较高。涉及到容灾决策的事情是比较复杂的事情,不是单一技术层面能够决策的了。
收起
银行 · 2017-09-27
浏览4234
y18511664518y18511664518技术总监长城超云
Data Guard Broker基于分布式的管理框架,可以用来集中创建,管理,配置和监控oracle data guard; Data Guard Broker的组件:客户端:Oracle grid control和命令行工具DGMGRL服务端:DMON进程和配置文件DMON进程的作用: 响应用户的请求,更新broker的配置文件,和data guard配置中的其...显示全部

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):

收起
金融其它 · 2017-09-27
浏览4429

提问者

y18511664518
技术总监长城超云
擅长领域: 数据库存储关系型数据库

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-09-27
  • 关注会员:2 人
  • 问题浏览:7191
  • 最近回答:2017-09-27
  • X社区推广