问题描述:情形是当主库真正出现异常之后,才会执行的操作,那么我们执行过failover 之后,如何在重新构建DG,这里我们利用flashback database来重构。模拟前主库要开启闪回区,否则要重新搭建DG了

1.由于主库已经不可访问,下面所有的操作都在备库完成,先取消实时同步

SQL> alter database recover managed standby database cancel;

2.强制取消redo接收

3.确认一下备库

4.切换为物理主库,然后open,确认一下切换成功,因为原先的主库还没有关闭,可能会产生一些连接,所以现在的状态是GAP,至此failover操作完成,原来的备库已经切换为主库,可以给业务提供服务了

SQL> alter database commit to switchover to primary with session shutdown;

SQL> alter database open;

SQL> select switchover_status,database_role,open_mode from v$database;

5.failover恢复,在新的主库执行,查询到scn值

SQL> select to_char(standby_became_primary_scn) from v$database;

6.在之前的主库现在的备库上执行,我的之前是startup状态,调整一下现在备库的状态

SQL> shutdown immediate

SQL> startup mount

7.恢复闪回区scn值

SQL> flashback database to scn 1388059

8.更改状态

SQL> alter database convert to physical standby;

SQL> shutdown immediate

SQL> startup

9.开启实时同步

SQL> alter database recover managed standby database using current logfile disconnect from session;

10.分别查看一下主备库的切换状态,以及数据库角色是否正常

SQL> select switchover_status,database_role,open_mode from v$database;

现在的备库:

现在的主库:已经不再显示GAP,现在指向备库,到此failover结束

11.相关命令

停止实时同步:SQL> alter database recover managed standby database cancel;

强制停掉redo apply:SQL> alter database recover managed standby database finish force;         //危险操作,一旦执行,rfs、mrp进程就会停掉

转换物理备库:SQL> alter database commit to switchover to primary with session shutdown;

查询状态角色:SQL> select switchover_status,database_role,open_mode from v$database;

查询SCN号   :SQL> select to_char(standby_became_primary_scn) from v$database;

闪回到序列号:SQL> flashback database to scn 1388059

切换主库为备库:SQL> alter database convert to physical standby;

开启实时同步:SQL> alter database recover managed standby database using current logfile disconnect from session;

DG中模拟failover故障与恢复的更多相关文章

  1. Oracle DG测试failover和后续恢复报告

    Oracle DG测试failover和后续恢复报告 一.概述 二.验证过程: 2.1 A库异常关闭 2.2 B库进行failover切换为新主库 2.3 要求C库成为新主库的备库 2.4 要求A库成 ...

  2. HDFS中NameNode发生故障没有备份从SecondNameNode恢复

    1.Secondary NameNode目录结构 Secondary NameNode用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照. 在/opt/module/hadoop ...

  3. Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置

    Oracle_lhr_CentOS 7.3  ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置 [大型连续免费公开课]Oracle 18c rac+dg+13.3的em ...

  4. 转 深入解析:一主多备DG环境,failover的实现过程详解 以及 11g 容灾库可以在线添加tempfile. 以及 11g 容灾库可以在线添加logile.

    https://yq.aliyun.com/articles/229600 核心,就是11g通过datafille_scn 号来追日志,而不是日志序列号来追日志. 加快standby switchov ...

  5. 基于iSCSI的SQL Server 2012群集测试(四)--模拟群集故障转移

    6.模拟群集故障转移 6.1 模拟手动故障转移(1+1) 模拟手动故障转移的目的有以下几点: 测试群集是否能正常故障转移 测试修改端口是否能同步到备节点 测试禁用full-text和Browser服务 ...

  6. [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的连接恢复和命令拦截

    这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第四篇:MVC程序中实体框架的连接恢复和 ...

  7. MVC程序中实体框架的连接恢复和命令拦截

    MVC程序中实体框架的连接恢复和命令拦截 这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC ...

  8. php中模拟多继承如何实现

    php中模拟多继承如何实现 一.总结 一句话总结:其实你继承别人也是想调用别人类里面的方法和属性,所以可以这样做:这本类中创建目标类的对象,然后通过这个对象来调用方法和属性,这样比继承来的方便. 二. ...

  9. 实现redis哨兵,模拟master故障场景

    由于主从架构无法实现master和slave角色的自动切换,所以在发送master节点宕机时,redis主从复制无法实现自动的故障转移,即将slave 自动提升为新的master.因此,需要配置哨兵来 ...

随机推荐

  1. java常用类 比较器/system/math/big

    Java 比较器 自然排序:java.lang.Comparable 定制排序:java.util.Comparator 自然排序:java.lang.Comparable  Comparable接口 ...

  2. 在虚拟机上的关于Apache(阿帕奇)(1)开启Apache服务以及介绍基础服务

    我们来开始讲述Apache(阿帕奇)服务 小知识: Apache   使得一台服务器上放很多网站,网站同时访问  可以使网站更安全(木马如果是root权限  如果webshell  apache 可用 ...

  3. Kong01-Kong 介绍

    概述 Kong 是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能. Kong 的官方网站,https://konghq.com/kong Kong 的官方 Github 站点:ht ...

  4. [考试反思]0928csp-s模拟测试54:转瞬

    咕了好久,也没什么想说的. 下一场就又爆炸了... T3特判打丢一句话丢了14分,剩下其实都还好. T1:x 给我的第一感觉是建图找联通块,但既然只要找联通块为什么不直接并查集呢? 对于每一个数字合并 ...

  5. Ubuntu13.10编译android源码中遇到的问题

    1. jdk的版本不对 我开始安装的是最新的jdk7,但是编译时会出现jdk的版本

  6. vue中组件的data为什么是一个函数

    1. 前言 在学习vue的时候,一直纳闷一件事:组件的data数据为什么必须要以函数返回的形式,为什么不是简单的对象形式呢?遂带着问题去翻官方文档,文档中自然也写明了这么做的原因,本篇博文以官方文档给 ...

  7. go中的数据结构切片-slice

    1.部分基本类型 go中的类型与c的相似,常用类型有一个特例:byte类型,即字节类型,长度为,默认值是0: bytes = []btye{'h', 'e', 'l', 'l', 'o'} 变量byt ...

  8. ios jquery css('left')无法读取属性解决的方法

    ios jquery css('left')无法读取属性解决的方法 <pre>$(this).position().left因为display:none状态下是读取不了 $(this).o ...

  9. linux搭建简易网站

    1.检查环境 getenforce #查看seLinux运行状态 Enforcing #强行执行 setenforce #临时关闭selinux vim /etc/selinux/config #编辑 ...

  10. python中字符串常见操作(二)

    # 可迭代对象有:字典,列表,元组,字符串,集合 str1 = '192.168.1.1' str2 = 'as df gh jk' str3 = '小李子' str4 = ['aa','bb','c ...