1、修改保护模式

  1. DGMGRL> edit configuration set protection mode as maxAvailability;
  2. Succeeded.

2、修改日志同步方式

  1. DGMGRL> show database verbose xiaohe 'LogXptMode'
  2. LogXptMode = 'ASYNC'
  3. DGMGRL> show database verbose xiaohedg 'LogXptMode'
  4. LogXptMode = 'ASYNC'
  5. DGMGRL> edit database xiaohe set property LogXptMode = 'SYNC';
  6. Property "logxptmode" updated
  7. DGMGRL> edit database xiaohedg set property LogXptMode = 'SYNC';
  8. Property "logxptmode" updated
  9. DGMGRL>
  10. DGMGRL> show database verbose xiaohe 'LogXptMode'
  11. LogXptMode = 'SYNC'
  12. DGMGRL> show database verbose xiaohedg 'LogXptMode'
  13. LogXptMode = 'SYNC'

3、在dgmgrl中配置主库与standby数据库的FastStartFailoverTarget属性

  1. DGMGRL> show database verbose xiaohe 'FastStartFailoverTarget';
  2. FastStartFailoverTarget = 'xiaohedg'
  3. DGMGRL> show database verbose xiaohedg 'FastStartFailoverTarget';
  4. FastStartFailoverTarget = 'xiaohe'

这里已经不用配置了, 如果需要配置, 使用如下的命令:
edit database xiaohedg set property FastStartFailoverTarget='xiaohe';

4、启动observer

DGMGRL> start observer
Observer started


5、在另外一个终端查看failover状态

可以看到Observer: xiaohe_dg1, 这里监控的就是主库。

  1. DGMGRL> show fast_start failover
  2. Fast-Start Failover: DISABLED
  3. Threshold: 30 seconds
  4. Target: (none)
  5. Observer: xiaohe_dg1
  6. Lag Limit: 30 seconds
  7. Shutdown Primary: TRUE
  8. Auto-reinstate: TRUE
  9. Configurable Failover Conditions
  10. Health Conditions:
  11. Corrupted Controlfile YES
  12. Corrupted Dictionary YES
  13. Inaccessible Logfile NO
  14. Stuck Archiver NO
  15. Datafile Offline YES
  16. Oracle Error Conditions:
  17. (none)


6、激活failover功能

  1. DGMGRL> enable fast_start failover;
  2. Enabled.

7、模拟故障

(1)、将主库给shutdown abort
  1. SQL> shutdown abort;
  2. ORACLE instance shut down.

(2)、等一两分钟, 查看observer的日志
  1. DGMGRL> start observer
  2. Observer started
  3. 23:56:08.19 Saturday, March 18, 2017
  4. Initiating Fast-Start Failover to database "xiaohe"...
  5. Performing failover NOW, please wait...
  6. Failover succeeded, new primary is "xiaohe"
  7. 23:56:11.64 Saturday, March 18, 2017


(3)、查看备库是否已经切换为主库
  1. SQL> select open_mode from v$database;
  2. OPEN_MODE
  3. --------------------
  4. READ WRITE

(4)、将故障的库重新启动
启动数据库报错:
  1. SQL> startup
  2. ORACLE instance started.
  3. Total System Global Area 839282688 bytes
  4. Fixed Size 2233000 bytes
  5. Variable Size 494931288 bytes
  6. Database Buffers 339738624 bytes
  7. Redo Buffers 2379776 bytes
  8. Database mounted.
  9. ORA-16649: possible failover to another database prevents this database from
  10. being opened



查看日志,下面的红色部分是新产生的日志:

  1. DGMGRL> start observer
  2. Observer started
  3. 23:56:08.19 Saturday, March 18, 2017
  4. Initiating Fast-Start Failover to database "xiaohe"...
  5. Performing failover NOW, please wait...
  6. Failover succeeded, new primary is "xiaohe"
  7. 23:56:11.64 Saturday, March 18, 2017
  8. 00:05:46.24 Sunday, March 19, 2017
  9. Initiating reinstatement for database "xiaohedg"...
  10. Reinstating database "xiaohedg", please wait...
  11. Operation requires shutdown of instance "xiaohedg" on database "xiaohedg"
  12. Shutting down instance "xiaohedg"...
  13. ORA-01109: database not open
  14. Database dismounted.
  15. ORACLE instance shut down.
  16. Operation requires startup of instance "xiaohedg" on database "xiaohedg"
  17. Starting instance "xiaohedg"...
  18. ORACLE instance started.
  19. Database mounted.
  20. Continuing to reinstate database "xiaohedg" ...
  21. Reinstatement of database "xiaohedg" succeeded
  22. 00:06:42.78 Sunday, March 19, 2017

等了几分钟后, 数据库自动恢复正常了。

经测试, 但故障的库只需要启动到mount状态, failover就能自动将库打开。


















DataGuard开启failover的更多相关文章

  1. DataGuard开启延时应用的测试

    DataGuard开启延时应用的测试 实验环境:RHEL 6.5 + Oracle 11.2.0.4 GI.DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes ...

  2. Oracle Dataguard之failover

    Oracle Dataguard中,角色转换包含两类:Switchover和Failover.上文<Oracle Dataguard之switchover>中,我们已经谈过了switcho ...

  3. 物理dataguard 正常切换 脚色转换,switchover_status 状态改变

    正常切换切换前: 主库:SQL> select DATABASE_ROLE from v$database;DATABASE_ROLE----------------PRIMARY SQL> ...

  4. Redis Sentinel:集群Failover解决方案(转载)

    本文转载自:http://shift-alt-ctrl.iteye.com/blog/1884370 文中的配置例子,还有failover过程中触发的订阅事件具有很好的参考价值. Redis sent ...

  5. Duplicate复制数据库并创建物理StandBy(spfile+不同实例名+不同路径)

    过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...

  6. 基于Dubbo框架构建分布式服务(一)

    Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配 ...

  7. redis 集群热备自动切换sentinel配置实战

    ---恢复内容开始--- Redis SentinelSentinel(哨兵)是用于监控redis集群中Master状态的工具,其已经被集成在redis2.4+的版本中一.Sentinel作用:1): ...

  8. redis高可用之REDIS SENTINEL

    1. Redis主从配置 1.1. 设置主从复制 Master <= Salve 10.24.6.5:6379 <= 10.24.6.7:6379 1.2.   取消主从复制 1.3.   ...

  9. 基于Dubbo框架构建分布式服务

    Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配 ...

随机推荐

  1. Hive 系列(四)—— Hive 常用 DDL 操作

    一.Database 1.1 查看数据列表 show databases; 1.2 使用数据库 USE database_name; 1.3 新建数据库 语法: CREATE (DATABASE|SC ...

  2. Zabbix-绘制动态拓扑图基础篇

    一.实验环境 1.1 zabbix 4.0.2 二.实验需求介绍 公司希望网络拓扑能够动态反应物理接口的状态或者业务的状态,希望将网络拓扑显示到大屏上 三.Zabbix在绘制拓扑的优缺点 3.1 优点 ...

  3. 对微软的敌视何时休? 从一篇语言评论文章对C#的评价说起

    看到一篇公众号文章<2020年什么编程语言最受欢迎,待遇最高?>,其中对C#的描述如下: 点击阅读原文,看到这是一篇翻译文章:https://codinginfinite.com/top- ...

  4. React Native 生命周期及相关方法小技巧使用

    ES6 生命周期图解 很多文章里的图解,第一步是 getDefaultProps , 第二步是 getinitialstate ,这是 ES5 的写法; 实际上ES6 中 getinitialstat ...

  5. Hibernate对象状态之间的神奇转换

    状态分类 在Hibernate框架中,为了管理持久化类,Hibernate将其分为了三个状态: 瞬时态(Transient Object) 持久态(Persistent Object) 脱管态(Det ...

  6. Codeforces 985D

    题意略. 思路:这个题本来打算先推一下公式,然后解方程来算.函数图像大概如下: 最左端为H.但是由于中间那个尖的地方(假设它的高度为h),可能在那个地方有多堆沙包,所以推公式貌似不行. 但是最高高度h ...

  7. Shiro的几个关键类

    Shiro在于Spring集成中,需要配置SecurityManager,Realm,ShiroFilterFactoryBean这三个类.在Web环境中SecurityManager一般配置Defa ...

  8. Delphi - cxGrid连接Oracle数据库

    cxGrid连接Oracle数据库 WinFrm窗体中需要添加OraSession .OraQuery和 OraDataSource控件. OraSession中配置数据库连接参数: OraQuery ...

  9. 使用ansible对思科交换机备份

    先决条件 - 了解ansible基本操作 - 了解网络设备相关操作 - 了解linux相关操作 安装 安装EPEL yum install https://dl.fedoraproject.org/p ...

  10. CodeForces 628 D Magic Numbers 数位DP

    Magic Numbers 题意: 题意比较难读:首先对于一个串来说, 如果他是d-串, 那么他的第偶数个字符都是是d,第奇数个字符都不是d. 然后求[L, R]里面的多少个数是d-串,且是m的倍数. ...