zoukankan      html  css  js  c++  java
  • oracle 单实例DG(闪回技术四)

    一,flashback

      Oracle Flashback技术是一组数据库特性,它可以让你查看数据库对象的过去状态,或者将数据库对象返回到以前的状态,而无需使用基于时间点的介质恢复。根据数据库的变化,闪回特性可以更快的回退不想要的变化,而且相比介质恢复,对数据库可用性产生的影响更小。

    利用闪回特性,你能够:
    • 执行回到过去的数据查询
    • 执行显示对数据库更改的详细历史的元数据的查询
    • 将表或行恢复到之前的时间点
    • 自动追踪和归档事务数据的更改
    • 当数据库保持在线状态时,回退事务和与它相关的事务

      flashback--闪回技术有闪回表、闪回删除、闪回查询、闪回事务查询、闪回事务、闪回数据库、闪回数据归档。其中,闪回查询、闪回事务查询用来“观察”过去;闪回数据归档并不是一个独立的功能,其功能是扩展闪回查询的时间窗口;闪回表、闪回删表能够以表为单位“回到”过去;闪回事务能够以事务为单位“回到”过去;闪回数据库能够以数据库为单位“回到”过去。

    二,开启功能

       备库操作:

       01,关闭实时同步     

    alter database recover managed standby database cancel;
    

       02, 关闭数据库后开启到mount状态

    SQL> shutdown immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount
    ORACLE instance started.
    
    Total System Global Area 2505338880 bytes
    Fixed Size		    2255832 bytes
    Variable Size		  603980840 bytes
    Database Buffers	 1879048192 bytes
    Redo Buffers		   20054016 bytes
    Database mounted.
    SQL>
    

       03,开始flashback

    SQL> alter database flashback on;
    
    Database altered.
    
    SQL> alter database open;
    
    Database altered.
    
    SQL> alter database recover managed standby database using current logfile disconnect from session;
    
    Database altered.
    

        04,查看闪回是否开启

    SQL> select open_mode,log_mode,flashback_on from v$database;
    
    OPEN_MODE	     LOG_MODE	  FLASHBACK_ON
    -------------------- ------------ ------------------
    READ WRITE	     ARCHIVELOG   YES
    

         已经开启了

    三,测试闪回技术

         测试前两个库开启闪回 为保后续恢复

        主库不能访问的话操作就再备库完成:

    SQL>

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

        alter database recover managed standby database finish force;

        select database_role from v$database;

        

        alter database commit to switchover to primary;

        alter database open;

        select switchover_status,database_role,open_mode from v$database;

         备库已经变为主库了

    四, 主库恢复

        上面提到了failover,这种情形是当主库真正出现异常之后,才会执行的操作,那么我们执行过failover 之后,如何在重新构建DG,这里我们利用flashback database来重构

        再新的主库查询   

    select to_char(standby_became_primary_scn) from v$database;
    

        现在再原来临时主库执行命令:

          shutdown immediate

           startup mount

          flashback database to scn 1064562; -----这个为新主库查询的值

          alter database convert to physical standby;

          shutdown immediate

           startup

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

          

          查询状态

          select process,status,sequence# from v$managed_standby;

          

          查询归档同步

          

  • 相关阅读:
    FBWF和EWF的对比
    还原数据库备份文件时,关于“System.Data.SqlClient.SqlError:媒体集有2个媒体簇,但只提供了1个。必须提供所有成员”的处理方式
    C#基础(八)——C#数据类型的转换
    C#基础(七)——静态类与非静态类、静态成员的区别
    C#基础(六)——值类型与引用类型
    C#基础(五)——类中私有构造函数作用
    C#基础(四)——ref与out的区别
    C#基础(三)—重载与覆盖
    oracle exists和 not exists 的用法
    easyUI 常见问题点
  • 原文地址:https://www.cnblogs.com/kingle-study/p/10412982.html
Copyright © 2011-2022 走看看