`

Data Guard broker系列之一:Data Guard Broker基础

 
阅读更多
Data Guard broker概览

Data Guard broker是建立在Data Guard基础上的一个对Data Guard配置,集中管理操作的一个平台,因此在学习Data Guard broker之前必须对Data Guard要有充分的了解。

Data Guard为我们提供了一套高可用的解决方案,但是在实际的使用方面确实显得有一些过于复杂,特别是在需要配置的standby机器多的时候更是如此,一 个个机器去登陆配置显得特别的麻烦;在需要做switchover或者是failover的时候情况也是一样,需要操作一系列的命令才能完成一次 switchover/failover的操作。Data Guard broker的推出就是为了简化DG复杂的管理过程的,它最大的作用就是集中化的统一管理,下面列出来一些Data Guard broker优势所在:

  使用broker 不使用broker
一般 将primary数据库与全部standby数据库看成一个整体进行管理 必须对primary数据库和各个standby进行单独的操作。
创建standby 通过使用OEM可以轻松的建立一个新的standby 所有操作必须手工进行:拷贝数据/控制/日志文件,设置初始化参数等等
配置和管理 可以在一个地方对所有的数据库进行统一的配置和管理,这些配置会被自动同步到各个数据库中 必须手工的进行配置,然后对Primary和standby进行单独的管理
控制 - 使用一个简单的命令进行failover和switchover的操作
- 通过配置可以自动的进行failover操作
- 必须使用多个SQLPLUS才能完成对数据库的管理
监控 - 自动持续对数据库配置,数据库状态以及其他参数进行自动管理
- 提供详细的数据库状态报告
- 和OEM Events集成
- 没有统一的视图进行管理,只能通过Fixed View一个个进行查看
– 自定义OEM Events管理

 

* 更详细的对比参看《Oracle Data Guard broker》


Data Guard broker组成

Oracle Data Guard broker基本组成部分:

图片来自Data Guard broker
图片来自Data Guard broker

broker的组成主要分成两大部分,分别是:

客户端组件
客户端组件是一个管理员与broker服务器端组件的接口,用户通过客户端来发出命令对服务器端的行为进行控制。客户端组件由OEM和DGMGRL两个组成
  • OEM(Oracle Enterprise Manager):图形化的Oracle管理工具,提供了多个向导功能方便DG的管理工作。
  • DGMGRL(Data Guard command-line interface): 命令行管理界面,可以通过命令很方便的操作以及监控数据库,命令列表见文档
服务器端组件
在每个配置了broker的数据库上面都存在一个服务器进程进行broker的管理操作,这个服务器进程就是Data Guard broker monitor(DMON),而这个DMON所用到的所有配置信息都会保留在一个配置文件中。这个DMON进程和配置文件就构成了每个数据库上 broker的服务器端组件。
  • Data guard broker monitor process(DMON):DMON是一个用来管理broker的后台进程,这个进程负责与本地数据库以及远程数据库的DMON进程进行通讯(与远端数据库的DMON进程进行通讯的时候使用的是一个 动态注册 的service name “db_unique_name_DGB.db_domain”)。这个进程负责维护配置文件的正确性以及不同数据库之间配置文件的一致性。在第一次创建 一个broker配置文件或者是将一个数据库加入一个现存的broker配置中的时候DMON会先收集现有数据库的DG配置信息并保存到配置文件中。
  • 配置文件:配置文件有DMON进行操作,它保存了broker管理的所有的数据库的状态信息,以及数据库相关属性(即数据库的初始化参数信息)的信息。同一个broker配置管理下的每个数据库上面都有一份相同的配置文件。

broker的配置管理

broker通过将DG环境划分成数据库配置和数据库这两种对象来简化DG的管理工作。

  • 数据库配置对象:数据库配置是一个包含多个数据库信息的集合,这些数据库信息包括数据库对象当前的形态、状态、及属性设置。同时这个集合可以同时混合了物理standby和逻辑standby。
  • 数据库对象:数据库对象指的是Primary和standby数据库。一般情况下一个数据库对象只包含一个实例,但是在RAC系统中一个数据库对象会包含多个实例。

broker通过将一个DG中的Primary数据库及所有的standby数据库逻辑的组成一个逻辑组来进行集中管理,因此每个broker配置 就是一个数据库的逻辑集合,它包含了组成数据库的日志传输服务、日志应用服务等逻辑的对象。DBA可以broker来控制这个逻辑集合的配置,改变它的配 置,同时还能监控这个组的整体健康状态。

DMON进程负责设置和维护broker配置,有了DMON的维护之后在实际管理中我们只需要把一个broker配置当初单个的单元管理就行了,剩下的工作由DMON去做,因此当执行一个影响到多个数据库的命令的时候,DMON实际上会进行下面的操作:

  1. 在Primary数据库上处理请求。
  2. 协调其他相关数据库上的DMON进程处理相应的请求。
  3. 更新本地系统中的配置文件。
  4. 与其他数据库上的DMON进程通讯以更新各自的配置文件。

每组配置文件中可以包含多个broker配置,但是每个数据库只会维护一组配置文件,因此在RAC环境中,配置文件是由组成这个RAC的各个instance共享的。DMON进程负责各个数据库之间配置文件的同步工作。

DMON进程通过配置文件中设定的数据库的参数来控制数据库的行为,这些属性通常都和数据库的某个DG相关的初始化参数相关联,在通过OEM或 DGMGRL修改这些属性的时候,这些属性记录会先保存在配置文件中,然后DMON进程同时也会对相关数据库的参数进行修改,这就要求我们在配置数据库的 时候必须使用SPFILE,保证DMON修改之后的参数能保留下来。


使用broker的准备清单

在使用Data Guard broker之前需要确定下面这些条件都已存在:

  • 必须使用spfile,这样再通过DGMGRL/OEM修改数据库参数之后能够保存下来。
  • 设置数据库初始化参数DG_BROKER_START为true,这样保证每次数据库起来的时候DMON进程也会自动起来。
  • 当使用RAC环境的时候要确保参数DG_BROKER_CONFIG_FILEn都指向一个所有实例都能访问的共享位置。
  • 当不适用Oracle默认端口启动数据库时必须设置LOCAL_LISTENER参数以保证service name <db_unique_name>_DGB.<db_domain>能被正确的注册。
  • 在listener.ora中静态的添加service name db_unique_name_DGMGRL.db_domain的注册,这个service name会在DGMGRL重启数据库的时候用到,通过DGMGRL重启数据库时DMON进程会先将数据库关闭,然后DGMGRL再用service name _DGMGRL.db_domain通过listener连接到数据库,再发出启动的命令,添加方法如下:
LISTENER = (DESCRIPTION =
    
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)
    
(PORT=port_num))))
SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=sid_name)
    
(GLOBAL_DBNAME=db_unique_name_DGMGRL.db_domain)
    
(ORACLE_HOME=oracle_home)))
  • 所有数据库都必须是在mount状态下才能被broker管理,RAC环境中选项START_OPTIONS必须设置为MOUNT,设置命令如下:
srvctl add database -d & lt ;db_unique_name & gt; -o & lt; $oracle_home & gt; -smount
or
srvctl modify database -d & lt;db_unique_name & gt; -o & lt; $oracle_home & gt; -smount
  • 主数据库必须运行在ARCHIVELOG模式下。
  • COMPATIBLE参数必须设置为9.2.0.1.0或更高,同时要保证所有的数据库包括Primary和standby设置是一致的,不一致的话会导致redo transport services无法正确的传输日志

参考至:http://www.dbabeta.com/2009/learn-data-guard-broker_basics.html

如有错误,欢迎指正

邮箱:czmcj@163.com

分享到:
评论

相关推荐

    Data_Guard_Broker

    Oracle Data Guard Broker 是一个强大的工具,它为管理Data Guard配置提供了集中化和自动化的方法。Data Guard本身是一个高可用性解决方案,确保在主数据库出现故障时,备用数据库能够无缝接管,保持业务连续性。...

    Oracle 9i Data Guard Broker Release 2 (9.2)

    Oracle 9i Data Guard Broker Release 2 (9.2) 是 Oracle 公司发布的一款数据保护和灾难恢复解决方案。该解决方案旨在提供高可用性和灾难恢复能力,以确保企业的业务连续性和数据安全。 数据保护是企业信息系统中最...

    Oracle Data Guard Broker 11g Release 2 (11.2)-290

    Oracle Data Guard Broker是Oracle数据库的一项重要特性,尤其在11g Release 2 (11.2)版本中,它提供了一种管理和维护Data Guard配置的自动化解决方案。Data Guard旨在为Oracle数据库提供高可用性和灾难恢复能力,...

    12c Data Guard配置手册-01

    对于监控和维护Data Guard环境,管理员还需要了解如何使用Oracle Data Guard Broker和Oracle Enterprise Manager等工具,以便于更直观和高效地管理Data Guard配置。 综上所述,该手册为IT专业人员提供了一套完整的...

    官方资料:[英文]Oracle Database 19c data-guard-broker

    Oracle Data Guard Broker是Oracle数据库的一项重要特性,主要在Oracle 19c版本中提供了一种自动化和集中化的管理工具,用于管理和维护Data Guard配置。它简化了Data Guard环境的复杂性,确保数据保护和高可用性,...

    【DATAGUARD】物理dg配置客户端无缝切换 (八.1)--Data Guard Broker 的配置

    Data Guard Broker 提供了一系列强大的命令,可以轻松地管理 Data Guard 环境中的数据库。例如: 1. **显示当前状态**: ```sql SHOW DATABASE; ``` 2. **执行切换操作**: ```sql SWITCHOVER DATABASE oradg11g...

    dataguard broker配置参考

    Dataguard Broker 是Data Guard的一部分,它简化了管理和监控Data Guard配置的过程。在本文中,我们将深入探讨如何配置Data Guard Broker环境以及快速启动故障切换(Fast Start Failover, FSO)。 首先,Data Guard...

    Oracle 11.2.0.3 RAC 与 RAC 之间搭建Data Guard 案例 -- Aative Data Guard 案例

    3. **配置Data Guard**:设置Data Guard broker,这是一个管理工具,可以简化Data Guard环境的管理和监控。配置Data Guard的保护模式,如Maximum Availability或Maximum Performance,根据业务需求选择是否启用redo...

    Oracle 10G Data Guard 资料--全面详细,绝对值得学习!!!

    4. **Data Guard Broker**:是Data Guard的一个重要增强,它简化了多个数据库的管理,允许通过单一界面进行配置、监控和故障切换操作。使用Data Guard Broker,可以实现自动化故障检测和恢复策略。 5. **保护模式和...

    Oracle Data Guard 11g完全参考手册

    这本精品指南全面介绍Data Guard无与伦比的数据保护、可用性和灾难恢复功能,详细讲解Data Guard基础知识,列出最佳的配置、监视、维护和故障排除实践,并指导您部署完美架构以满足灾难恢复目标和其他要求。...

    一点一滴讲解Data Guard前世今生

    学习Data Guard不仅仅是学习一个产品,它还是DBA进阶之路的重要一环。一名高级DBA需要掌握Data Guard的理论知识和实践经验,能够在实际工作中灵活运用,从而保障数据库的高可用性和灾难恢复能力。通过对Data Guard...

    Oracle Data Guard 部署

    Data Guard 可以通过命令行方式管理 primary 数据库或 standby 数据库,也可以通过 Data Guard broker 提供的专用命令行界面(DGMGRL),或者通过 OEM 图形化界面管理。 Data Guard 的优点包括:高可用性、灾难恢复、...

    ORACLE之Data Guard部署培训讲学.pdf

    Oracle Data Guard是一种高级的数据保护解决方案,它为Oracle数据库提供高可用性和灾难恢复功能。通过创建一个或多个备用数据库,Data Guard能够确保在主数据库发生故障时,数据的连续性和一致性得到保障。以下是对...

    Oracle 11.2.0.3 使用 ADG 搭建Data Guard 案例

    Oracle 11.2.0.3 数据保护技术在企业级数据库管理中扮演着至关重要的角色,其中Active Data Guard(ADG)是Oracle提供的一种高级数据保护解决方案,用于构建高可用性和灾难恢复策略。本案例将详细介绍如何使用ADG来...

    oracle10gr2_data_guard.rar_data guard_oracle_oracle data guard

    一、Data Guard基础概念 1. 主数据库(Primary Database):正常运行并处理事务的数据库。 2. 备用数据库(Standby Database):与主数据库同步或接近同步状态的数据库,用于故障转移和灾难恢复。 3. 实时应用克隆...

    data guard原理与配置

    Data Guard的技术基础是standby database,其商业性名称为Data Guard。在没有Streams技术的时代,Data Guard是实现容灾的常用技术。备用数据库不仅提供备份功能,还能保证在特定情况下与主数据库完全一致。Data ...

    Data Guard10gR2 中文翻译

    Data Guard由一系列组件组成,包括物理 standby数据库、逻辑 standby数据库以及相应的管理工具。物理standby数据库与主数据库保持实时同步,而逻辑standby则允许在不影响主数据库运行的情况下进行数据转换。这些...

    官方资料:[英文]Oracle Data Guard Concepts and Administration 11g(11.2).pdf

    Data Guard Configurations,Primary Database,Standby Databases,Data Guard Services.,Redo Transport Services.,Apply Services, Role Transitions.,Data Guard Broker.,Using Oracle Enterprise Manager ...

    Oracle11g RAC 上安装和配置 Data Guard.pdf

    - **Data Guard Broker**: 一个管理工具,用于监控 Data Guard 配置并自动化常见任务。 ##### 2.4 网络 为了确保 RAC 系统中的 Data Guard 正常工作,网络配置必须能够支持多路径连接以及高可用性。通常包括以下...

Global site tag (gtag.js) - Google Analytics