• 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;

          

          查询归档同步

          

  • 相关阅读:
    PHP概率算法---砸金蛋示例
    onethink----网站配置信息调用!
    ajax解决跨域方法(适用于自己写接口解决跨域)
    JavaScript获取地址栏的参数!
    Atitit. null错误的设计 使用Optional来处理null
    Atitit.常用的gc算法
    Atitit.java expression fsm 表达式分词fsm引擎
    Atitit.安全性方案规划设计4gm  v1 q928
    Atitit.安全性方案规划设计4gm  v1 q928
    Atitit.java expression fsm 表达式分词fsm引擎
  • 原文地址:https://www.cnblogs.com/kingle-study/p/10412982.html
Copyright © 2020-2023  润新知