配置并启用 Data Guard 代理

为 Data Guard 设置数据库和备用数据库后,您将需要设置其代理。Data Guard 代理将负责管理 Data Guard 配置的创建、控制和监控。

本指南中使用了以下示例:

数据库唯一名称 服务器主机名 RAC 实例名称 角色
数据库唯一名称 服务器主机名 RAC 实例名称 角色
DBDG_SITE1 site1db2site1db1 DBDG_SITE12DBDG_SITE11 主要
DBDG_SITE2 site2db2site2db1 DBDG_SITE22DBDG_SITE21 备用实例

设置主数据库

在主数据库上启动 Data Guard 监控进程:

  1. 登录托管主数据库的第一个裸金属解决方案服务器。

  2. /etc/oratab 中,检查是否存在用于为主数据库启用环境变量的条目:

    DBDG_SITE11:/apps/oracle/19.0.0/db_home1:N
    
  3. 设置 ORACLE_SID 环境变量,以便连接到主数据库:

    source oraenv <<< "DBDG_SITE11"
    

    您应该会收到响应 The Oracle base has been set to /apps/oracle/oracle_base

  4. 使用恢复管理器检查归档日志是否不会在应用于所有备用数据库之前被自动删除:

    rman target /
    
    CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
    EXIT;
    
  5. 启动 SQL*Plus,然后配置代理配置文件的位置并启动代理。RAC 数据库要求代理配置文件位于共享存储空间中,最好是位于 ASM 磁盘组中:

    sqlplus / as sysdba
    
    ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1='+DATA/DBDG_SITE1/dr1DBDG_SITE1.dat' SID='*' SCOPE=BOTH;
    ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2='+DATA/DBDG_SITE1/dr2DBDG_SITE1.dat' SID='*' SCOPE=BOTH;
    ALTER SYSTEM SET DG_BROKER_START=true SID='*' SCOPE=BOTH;
    EXIT;
    

设置备用数据库

在备用数据库上启动 Data Guard 监控进程:

  1. 登录托管备用数据库的第一个裸金属解决方案服务器。

  2. 设置 ORACLE_SID 环境变量,以便连接到备用数据库:

    source oraenv <<< "DBDG_SITE21"
    

    您应该会收到响应 The Oracle base has been set to /apps/oracle/oracle_base

  3. 登录 SQL*Plus,然后配置代理配置文件的位置并启动代理。

    sqlplus / as sysdba
    
    ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1='+DATA/DBDG_SITE2/dr1DBDG_SITE2.dat' SID='*' SCOPE=BOTH;
    ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2='+DATA/DBDG_SITE2/dr2DBDG_SITE2.dat' SID='*' SCOPE=BOTH;
    ALTER SYSTEM SET DG_BROKER_START=true SID='*' SCOPE=BOTH;
    EXIT;
    

创建代理配置

  1. 登录托管主数据库的第一个裸金属解决方案服务器。

  2. 连接到 Data Guard 命令行界面,然后连接到主数据库:

    dgmgrl
    
    CONNECT SYS@DBDG_SITE1
    

    当系统提示输入密码时,请输入主数据库的 SYS 远程登录密码。

  3. 创建代理配置:

    CREATE CONFIGURATION 'DBDG' AS PRIMARY DATABASE IS 'DBDG_SITE1' CONNECT IDENTIFIER IS DBDG_SITE1;
    
  4. 添加备用数据库:

    ADD DATABASE DBDG_SITE2 AS CONNECT IDENTIFIER IS DBDG_SITE2 MAINTAINED AS PHYSICAL;
    
  5. 启用配置。启用此配置会指示代理进程开始从主数据库传送日志,并在备用数据库收到日志后应用重做:

    ENABLE CONFIGURATION;
    
  6. 您可以使用以下命令检查配置是否成功:

    SHOW CONFIGURATION;
    
    SHOW DATABASE  DBDG_SITE1;
    
    SHOW DATABASE DBDG_SITE2;
    
    VALIDATE DATABASE DBDG_SITE1;
    
    VALIDATE DATABASE DBDG_SITE2;
    

    在备用数据库与主数据库同步之前,show configuration 命令不会报告 SUCCESS 状态。初始同步所需的时间可能因主数据库上执行的更改量或主站点和备用站点之间的延迟情况而异。以下是成功配置的示例:

    Configuration - DBDG
    
      Protection Mode: MaxPerformance
      Members:
      DBDG_SITE1 - Primary database
        DBDG_SITE2 - Physical standby database
    
    Fast-Start Failover:  Disabled
    
    Configuration Status:
    SUCCESS   (status updated 0 seconds ago)
    
  7. 在新配置的备用数据库上启用闪回功能:

    CONNECT SYS@DBDG_SITE2
    

    当系统提示您输入密码时,请输入备用数据库的 SYS 远程登录密码。

    EDIT DATABASE DBDG_SITE2 SET STATE=APPLY-OFF;
    SQL 'ALTER DATABASE FLASHBACK ON';
    EDIT DATABASE DBDG_SITE2 SET STATE=APPLY-ON;
    
  8. 退出 Data Guard 命令行界面:

    EXIT;
    

后续步骤

接下来,验证 Data Guard 部署