风哥教程

培训 . 交流 . 分享
Make progress together!

在Oracle DataGuard环境中使用Broker-自动Fast Start Failove

[复制链接]
内容发布:风哥| 发布时间:2013-12-24 14:13:08
在Oracle DataGuard数据库容灾环境中使用Broker-自动Fast Start Failove
一、环境介绍

Data Guard 环境:

Primary数据库:oracle 10.2.0.5.0
操作系统: redhat 4.4
主机名:source
IP地址:192.168.10.101
数据库SIDsource
DB_UNIQUE_NAMEsource_pr

Standby数据库:oracle 10.2.0.5.0
操作系统: redhat 4.4
主机名:target
IP地址:192.168.10.102
数据库SIDsource
DB_UNIQUE_NAMEsource_st


二、dataguard启停


注意Data Guard 启动顺序:

启动顺序:先standby ,primary;
关闭顺序:先primary standby;

在备库将实例启动到mount 状态:
SQL>startup nomount;
SQL>alter database mount standby database;
SQL>alter database recover managed standby database disconnect from session;
如果要取消恢复:alter database recover managed standby database cancel;

在备库启动监听:
$lsnrctl start

在主库启动实例:
SQL> startup;

在主库启动监听:
$lsnrctl start

在主库验证归档目录是否有效:

SQL> select dest_name,status,error from v$archive_dest;

如果有错误,要排查原因。

SQL> alter system switch logfile;
SQL> select max(sequence#) from v$archived_log;

查看数据库模式
SQL>select dest_name,status,database_mode,recovery_mode,protection_mode from v$archive_dest_status;
SQL>select status,database_mode from v$archive_dest_status;
SQL>select OPEN_MODE, PROTECTION_MODE, ACTIVATION#,DATABASE_ROLE, SWITCHOVER# ,SWITCHOVER_STATUS from v$database;


三、Fast Start Failover概述与介绍

1Broker
      
Data Guard环境设置了Broker后,当主库出现以下情况,Broker就会自动进行主备库的切换。
1) Instance Failure
2) Shutdown Abort
3) Offline Datafiles due to I/O error
4) Network disconnection

切换时,Observer会将备库变成主库。 同时Observer通过应用Flashback log将原来的主库变成备库。所以,Data Guard Broker必须开启Flashback,同时将DG 配置在maximum availability模式。

Data Guard Broker会在所有的主备库上使用自己的DMON进程和配置文件进行通信。当我们将DG_BROKER_START 设置为true之后,DMON进程就会启动。 对于Broker的配置文件,我们可以通过Enterprise Manger 或者使用DGMGRL命令进行创建。

Broker的配置文件有自己的参数和设置。 Data Guard 允许有多分配置文件,所以我们需要在DG_BROKER_CONFIG_FILEn 参数里指定正确的配置文件。 要注意的是, 这个控制文件是二进制文件,不要手动去修改它, 这样会破坏这个文件。

如果是RAC 环境, 所有的实例有一份Broker 配置文件。 该文件放在共享设备上。

Broker的更多内容参考:
Interaction Between the Data Guard Broker and a Data Guard Configuration [ID 249703.1]

Data Guard, Concepts and Administration
Data Guard Broker
Note:180031.1: Creating a Data Guard configuration
Note:186150.1: Data Guard 9i  Creating a Logical Standby database
Note:214071.1: Creating a configuration using Data Guard Manager
Note:201669.1: Setup and maintenance of Data Guard Broker using DGMGRL
Note:745201.1: Diagnosing Connection Problems with an active Data Guard Broker configuration


2failover类型

failover有两种类型:完全failover和立即failover

完全failover
进行完全failover操作的是很broker会竟可能的恢复数据,同时在failover完成之后会根据情况尽可能的将没有参与failoverstandby变成新的primary的可用的standby

立即failover
立即failover的操作开始之后broker不再去试图恢复更多的数据,另一个就是failover完成之后所有没有参与failoverstandby都要重新启用。
调用这两种failover的命令如下

-- 完全failover
FAILOVER TO standby_database_name;

-- 立即failover
FAILOVER TO standby_database_name IMMEDIATE;
broker执行完全failover的过程
检查primary是否可用,可用的话给出一条警告信息。
确认目标standby可用,不可用的话failover失败。RAC环境中将关闭standby的其他不参与的instance
等待目标standby完成还在队列中的redo信息之后关闭redo log apply或是sql apply
将目标standby转换成新的primary
将新的primary数据库打开为读写模式。
检查其他的standby是否能成为新primarystandby,如果可以的话则该standby的状态保证不变,否则则需要re-enable
启动redo传送服务将redo传送给那些不需要re-enablestandby数据库。
如果是RAC环境则重启那些之前关闭的instance
broker执行立即failover的过程
确认目标standby可用,不可用的话failover失败。RAC环境中将关闭standby的其他不参与的instance
立即停止redo log apply或是sql apply,不管是否还有可恢复的数据,这样可能会造成数据丢失。
将目标standby转换成新的primary并打开到读写模式,并启动redo传送服务。




上一篇:HP-UX IA64 11.31操作系统上安装Oracle 10g数据库相关要求
下一篇:在Oracle DataGuard环境中使用Broker-角色转换Switchover
专业提供Oracle/MySQL/NoSQL/Linux数据库培训与技术支持服务,QQ号:113257174
关注风哥教程微信公众号itpux_com  ,了解本站最新技术资料的分享.

欢迎加QQ群,提供超多高质量Oracle/Unix/Linux技术文档与视频教程的下载。

Oracle/MySQL/Linux群4-5:189070296  150201289  
Oracle/MySQL/Linux群6-8:244609803   522261684   522651731
备注:请勿重复加群,另请注明 from itpux
回复

使用道具 举报

1框架
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门文章教程

  • Hadoop实战培训教程09_Hadoop集群环境搭建
  • 风哥Oracle数据库巡检工具V1.0(附2.6网页
  • Oracle 12cR2 九大新功能全面曝光_详解云数
  • MySQL5权威指南(第3版)PDF电子版下载
  • 实战PHP与MySQL权威指南PDF电子书下载
  • Oracle19c数据库发布与下载地址
快速回复 返回顶部 返回列表