Sun Cluster Geographic Edition 数据复制指南(适用于 Oracle Data Guard)

Procedure如何在使用 Oracle Data Guard 复制的系统上执行故障恢复切换操作

在使用当前主群集 cluster-newyork 上的数据重新同步原来的主群集 cluster-paris 上的数据后,可按照以下过程在原来的主群集上重新启动应用程序。

故障恢复过程仅适用于处在伙伴关系中的群集。对于每个伙伴关系而言,以下过程只需执行一次。

开始之前

执行故障恢复切换之前,cluster-newyork 上已执行了接管操作。这些群集现在具有以下角色:

  1. 如果原始主群集 cluster-paris 发生故障,请确认是否已重新启动群集以及是否在群集上启用了 Sun Cluster Geographic Edition 基础结构。

    有关重新启动群集的更多信息,请参见《Sun Cluster Geographic Edition 系统管理指南》中的“引导群集”

  2. 将发生故障的 Oracle Data Guard 主数据库恢复为新的备用数据库。

    请参阅介绍如何执行此步骤的 Oracle 文档

  3. 确定原始主群集 cluster-paris 作为 Oracle Data Guard 配置的一部分正确运行。


    oracle (phys-paris-1)$ dgmgrl sys/sysdba_password@sales-svc
    DGMGRL> show configuration;
    

    如果原始主群集 cluster-paris 正确运行,show configuration 命令会显示 SUCCESS 状态。

    如果原始主群集在故障点关闭,它会标记为取消激活的主群集。如果原始主群集在故障点启动,它会标记为取消激活的辅助群集。

  4. 将原来的主群集 cluster-paris 与当前主群集 cluster-newyork 重新同步。

    群集 cluster-paris 将不再使用它自己的配置并在本地复制 cluster-newyork 配置。重新同步伙伴关系和保护组配置。

    1. cluster-paris 上重新同步伙伴关系。


      phys-paris-1# geops update partnershipname
      

      注 –

      对于每个伙伴关系而言,即使是要对该伙伴关系中的多个保护组执行故障恢复切换操作,也只需为该伙伴关系执行一次此步骤即可。


      有关对伙伴关系进行同步的更多信息,请参见《Sun Cluster Geographic Edition 系统管理指南》中的“重新同步伙伴关系”

    2. 确定原来的主群集 cluster-paris 上的保护组是否处于活动状态。


      phys-paris-1# geoadm status
      
    3. 如果原来的主群集上的保护组处于活动状态,则将其停止。


      phys-paris-1# geopg stop -e local protectiongroupname
      
      -e local

      指定命令的范围。

      指定 local 范围后,该命令将仅在本地群集上有效。


      注 –

      属性值(例如 globallocal区分大小写。


      protectiongroupname

      指定保护组的名称。

      如果保护组已处于取消激活状态,则保护组中资源组的状态可能为 Error,因为应用程序资源组处于受管和脱机状态。

      如果取消激活保护组,则应用程序资源组将不再处于受管状态,从而退出 Error 状态。

    4. 检验保护组是否已停止。


      phys-paris-1# geoadm status
      
    5. cluster-paris 上重新同步每个保护组。

      由于 cluster-newyork 群集上保护组的本地角色现在为 primary,因此此步骤可确保 cluster-paris 群集上保护组的角色变为 secondary。


      phys-paris-1# geopg update protectiongroupname
      

      有关同步保护组的更多信息,请参见重新同步 Oracle Data Guard 保护组

  5. cluster-paris 上验证每个保护组的配置。

    保护组处于 Error 状态时是无法启动的。因此,请确保保护组不处于 Error 状态。


    phys-paris-1# geopg validate protectiongroupname
    

    有关更多信息,请参见如何验证 Oracle Data Guard 保护组

  6. cluster-paris 上激活每个保护组。

    在激活保护组时,它的应用程序资源组也会进入联机状态。


    phys-paris-1# geopg start -e global protectiongroupname
    
    -e global

    指定命令的范围。

    通过指定 Global 范围,该命令在保护组所在的两个群集上均生效。


    注 –

    属性值(例如 globallocal区分大小写。


    protectiongroupname

    指定保护组的名称。

  7. 确认数据已完全同步。

    1. 确认 cluster-newyork 上的保护组的状态为 OK


      phys-newyork-1# geoadm status
      

      请参阅输出内容中的 Protection Group 部分。

    2. 确认复制资源组 ODGprotectiongroupname-odg-rep-rg 中的所有资源均报告状态 OK


      phys-newyork-1# clresource status -v ODGprotectiongroupname-odg-rep-rs
      
  8. 确保两个伙伴群集上的保护组处于激活状态。


    phys-paris-1# geoadm status
    …
    phys-newyork-1# geoadm status
  9. 对于任一群集上的每个保护组,执行从 cluster-newyorkcluster-paris 的切换。


    phys-node-n# geopg switchover [-f] -m cluster-paris protectiongroupname
    

    有关更多信息,请参见如何将 Oracle Data Guard 保护组从主群集切换到备用群集

    cluster-paris 群集恢复它保护组主群集的原有角色。

  10. 确保成功执行了切换操作。


    phys-node-n# geoadm status
    

    检验该保护组现在在 cluster-paris 上处于 primary 角色,在 cluster-newyork 上处于 secondary 角色,并且两个群集上 Data replication Resource groups 属性的状态均显示为 OK

  11. 检查每个 Oracle Data Guard 保护组的应用程序资源组和数据复制的运行时状态。


    phys-node-n# clresourcegroup status -v resourcegroupname
    # clresource status -v ODGConfigurationName-odg-rep-rs
    

    请参阅要检查的 Oracle Data Guard Broker 配置所对应的 StatusStatus Message 字段。有关这些字段的更多信息,请参见表 2–1

    有关数据复制的运行时状态的更多信息,请参见检查 Oracle Data Guard 数据复制的运行时状态