`
wanglihu
  • 浏览: 911223 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江
社区版块
存档分类

测试版-逻辑switchover

阅读更多
1.检查primary数据库是否配置了standby redologs :
SQL> select * from v$standby_log;
no rows selected
对于逻辑standby数据库,standby redologs是必须的,因此我们需要为当前的primary创建几个standby redologs。
2.为当前的primary创建几个standby redologs:
SQL> alter database add standby logfile group 4 ('/oracle/oradata/test/standbyrd01.log') size 20m;
     alter database add standby logfile group 5 ('/oracle/oradata/test/standbyrd02.log') size 20m;
     alter database add standby logfile group 6 ('/oracle/oradata/test/standbyrd03.log') size 20m;
     alter database add standby logfile group 7 ('/oracle/oradata/test/standbyrd04.log') size 20m;
     alter database add standby logfile group 8 ('/oracle/oradata/test/standbyrd05.log') size 20m;
Database altered.
3.检查primary数据库状态
  在当前的primary数据库查询v$database视图中的switchover_status列,查看当前primary数据库状态。
SQL> select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
TO STANDBY

说明:如果该查询返回TO STANDBY 或SESSIONS ACTIVE则表示状态正常,可以执行转换操作,如果否的话,就需要你先检查一下当前的dataguard配置。
4.准备转换primary为逻辑standby
  执行下列语句,将primary置为准备转换的状态:
SQL>alter database prepare to switchover to logical standby;
Database altered.

5.查看一下switchover_status的状态
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER

6.准备转换逻辑standby为primary
SQL>  alter database prepare to switchover to primary;
Database altered.
7.查看一下standby的switchover_status的状态
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER

8.再次检查primary数据库状态
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO LOGICAL STANDBY

注意:这步虽然不做什么操作,但检查结果却非常重要,它直接关系到switchover转换是否能够成功。逻辑standby执行完prepare命令之后,
      就会生成相应的LogMiner字典数据(就像我们前面创建逻辑standby时,primary会生成LogMiner字典数据一样),只有它正常生成并发
      送至当前的primary,转换操作才能够继续下去。不然当前的primary数据库在转换完之后,可能就失去了从新的primary接收redo数据的能力了。
      因此,如果上述查询的返回结果不是:TO LOGICAL STANDBY的话,你可能就需要取消此次转换,检查原因,然后再重新操作了。
提示:
    取消转换可以通过下列语句:
SQL> alter database prepare to switchover cancel;
需要分别在primary和逻辑standby执行。
9.转换primary为逻辑standby
  执行下列语句:
SQL> alter database commit to switchover to logical standby;
Database altered.
注意:该语句需要等待当前primary所有事务全部结束。同时该语句也会自动拒绝用户发布的新事务或修改需求。为确保该操作尽可能快的执行,
      最好自开始切换操作起就禁止所有用户的操作。
      该命令执行完之后,这个primary就已经成为新的逻辑standby了。不过在新primary执行完转换之前,不要关闭当前这个数据库。
10.再次检查逻辑standby状态
   逻辑standby在接收到前primary的转换消息,并应用完相关的redo数据之后,会自动暂停sql应用,然后查询switchover_status的状态,应该为:TO PRIMARY
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
11.转换逻辑standby为primary
   最后的工作总会在逻辑standby上操作,通过上列语句,将该逻辑standby转换为新的primary。
SQL>  alter database commit to switchover to primary;
Database altered.
到此switchover切换完成。
12.启动新逻辑standby的sql应用 
SQL> alter database start logical standby apply;
Database altered.
如果想取消sql应用,执行如下命令:
SQL> alter database stop logical standby apply;
Database altered.
假如为standby库创建了standby redologs日志文件,可以通过如下命令应用和取消日志应用:
SQL> alter database start logical standby apply immediate;
SQL> alter database stop logical standby apply immediate;
到此逻辑standby的switchover完成。
分享到:
评论

相关推荐

    oracle dataguard switchover

    oracle dataguard switchover scripts

    SwitchOver.rar

    SwitchOver

    【DATAGUARD】物理dg的switchover切换(五).pdf

    【DATAGUARD】物理dg的switchover切换(五).pdf【DATAGUARD】物理dg的switchover切换(五).pdf

    Oracle 12c 部署Data Guard,Switchover和Failover

    Oracle Database 12c 部署Data Guard(ADG、LDG)并实现Switchover和Failover(Rman Duplicate和Broker).pdf

    perform oracle 11g physacal dataguard switchover

    perform oracle 11g physacal dataguard switchover

    Oracle Dataguard 主备切换(Switchover)实例

    Oracle Dataguard 主备切换(Switchover)实例 主备切换(Switchover)详细步骤

    [Oracle] Data Guard 之 浅析Switchover与Failover

    Data Guard主从库之间的角色切换分为以下两种:1)SwitchoverSwithchover通常都是人为的有计划的进行角色互换,比如...下面分别演示物理Standby的Switchover和Failover(逻辑Standby的切换类似)。 1. 物理Standby执行S

    Dataguard故障切换(Switchover和Failover)及利用Flashback进行恢复.docx

    Dataguard故障切换(Switchover和Failover)及利用Flashback进行恢复

    CCIP组播V3版本视频.zip

    │ 3.7PIM-SM SPT Switchover实验.wmv │ 3.8PIM-SM分发树prune.wmv │ 3.9PIM-SM分发树prune实验.wmv │ 4.0Bidirectional pim 双向树实验部分.wmv │ 4.0Bidirectional pim 双向树理论部分.wmv │ 4.10multicast ...

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

    详细讲述了Data Guard Broker概念、安装、管理配置、Switchover和Failover切换、使用DGMGRL命令行管理、故障排查解除…………

    switchover.sh

    dataguard一键切换脚本适用于DBA 灾备主备切换场景下适用,适用该脚本可以实现一键切换,重复调用。

    DG主备库切换.docx

    在备库中,需要应用 redo,执行 alter database recover managed standby database disconnect from session 命令,然后检查 Switchover_Status 值,如果为 to primary,则需要执行 ALTER DATABASE COMMIT TO ...

    DataGuard(DG)

    (八.1)物理dg配置客户端无缝切换--Data Guard Broker 的配置 (八.2)物理dg配置客户端无缝切换--Fast-Start ...(八.5)物理dg的switchover切换 (八.6)物理dg的failover切换 (八.7)物理dg在主库丢失归档文件的情况下的恢复

    DataGuard简明笔记

    DataGuard简明笔记 1 ...(一) 创建逻辑Standby数据库 15  PRIMARY数据库 16  STANDBY数据库 16 (二) 逻辑STANDBY的角色转换 18  SWITCHOVER: 18  FAILOVER: 19 故障转移后其他standby的处理: 19

    AD9548.pdf

    Supports reference switchover with phase build-out Supports hitless reference switchover Auto/manual holdover and reference switchover 4 pairs of reference input pins with each pair configurable as...

    DataGuard物理standby管理_主备切换

    在备库端,需要确认是否可以切换为主库,如果 Switchover_status 为 recovery needed 或 switchover latent,需要 Apply 完所有归档日志才能切换。 2. Failover Failover 是一种无计划的切换方式,通常用于主库...

    DNS Failover-开源

    该程序对F5 BigIP共享IP(或其他共享IP)执行ping操作,并将响应与用户定义的“首选” IP进行比较,以确定是否应将DNS修改为故障转移模式。 等待2分钟,然后再次检查。

    p28412269_112040_WINNT.zip

    此补丁程序所解决的 Bug 10136473 CELLSRV FAILS DUE TO ORA-7445 [KAF4F0RST9IR2SRP1] ...ORA-06550: DBMS_DRS PACKAGE DOES NOT EXIST ON NEW STANDBY DB AFTER SWITCHOVER 打开自述文件以查看所有 Bug

    创建物理dataguard

    逻辑standby 1 物理standby 1 二、物理datagurad创建步骤 2 1、 2 2、 2 三、主数据上的准备工作 2 1、设置主数据库为Force logging 2 2、建立password file 2 3、配置standby redo log 2 4、设置主数据库为 ...

Global site tag (gtag.js) - Google Analytics