zoukankan      html  css  js  c++  java
  • Oracle Flashback 闪回

    Oracle 的闪回技术是一种数据恢复技术,仅能对用户逻辑错误进行恢复,

    闪回针对的是提交commit的事务,没有提交的事务,使用rollback

    1、闪回版本查询 Flashback Version Query

    所谓版本指的是每次事务所引起的数据行的变化情况,每一次变化就是一个版本。

    Oracle 提供了闪回版本查询,让我们可以看到数据行的整个变化过程。变化指的是已经提

    交的事务引起的变化,没有提交的事务引起的变化不会显示。

    闪回版本查询语法

    基于 SCN 的版本查询
    SELECT <columns>
    FROM <schema_name.table_name>
    VERSIONS BETWEEN SCN <minimum_scn> AND <maximum_scn>
    [WHERE <column_filter>]
    [GROUP BY <non-aggregated_columns>]
    [HAVING <group filter>
    [ORDER BY <position_numbers_or_column_names>]
    基于 TIMESTAMP 的版本查询
    SELECT <columns>
    FROM <schema_name.table_name>
    VERSIONS BETWEEN timestamp to_timestamp('start_timestamp') and to_timestamp('end_timestamp')
    [WHERE <column_filter>]
    [GROUP BY <non-aggregated_columns>]
    [HAVING <group filter>
    [ORDER BY <position_numbers_or_column_names>]

    在查询中我们可以结合伪列进行查询:

    VERSIONS_STARTSCN VERSIONS_STARTTIME
    该记录操作时的 scn 或时间,如果为空,表示该行记录是在查询范围外创建的。

    VERSIONS_ENDSCN VERSIONS_ENDTIME
    该记录失效时的 scn 或时间,如果为空,说明记录当前时间在当前表内存在,或者已经被删除
    了,可以配合着 VERSIONS_OPERATION 列来看,如果 VERSIONS_OPERATION 列值为 D,说明该列
    已被删除,如果该列为空,则说明记录在这段时间无操作。

    VERSIONS_OPERATION
    对该行执行的操作:I 表示 insert,D 表示 delete,U 表示 update。提示:对于索引键的
    update 操作,版本查询可能会将其识别成两个操作:DELETE 和 INSERT。

    VERSIONS_XID

    该操作的事务 ID

    举个例子,使用闪回版本查询来模糊查询刚刚进行操作过的t表:

    SYS@orcl> select versions_xid xid,versions_operation v_ops from t versions between scn minvalue and maxvalue;

    XID                         V

    --------------------- --

    0300180034040000  D

    0300180034040000  D

    0300180034040000  D

    0300180034040000  D

    因为不知道scn号所以我们可以用minvalue和maxvalue来模糊查询,

    查询结果显示我刚刚对表t执行了D操作即delete操作。

    2、闪回事务查询 Flashback Transaction Query

    闪回事务查询就是对过去某段时间内所完成事务的查询和撤销,通过闪回事物分析,
    可以识别在一个特定的时间段内所发生的所有变化,也可以对数据库表进行事物级恢复。


    3、闪回查询
    Flashback query

    4、闪回表
    Flashback Table


    5、闪回删除(Flashback Drop)


    6、闪回数据库
    Flashback Database

    7、闪回数据归档

    Flashback Data Archive

  • 相关阅读:
    Installing OpenSSH from the Settings UI on Windows Server 2019 or Windows 10 1809
    [CB]Intel 2018架构日详解:新CPU&新GPU齐公布 牙膏时代有望明年结束
    [百科]数字孪生
    wifi 标准
    WM_CONCAT和LISTAGG 语法例子
    Informix 启动 Fatal error in shared memory initialization解决方法
    B站日志系统的前世今生
    nginx安全日志分析脚本的编写
    可视化web日志分析工具Logstalgia
    CDH-5.7.0:基于Parcels方式离线安装配置
  • 原文地址:https://www.cnblogs.com/ivychang/p/5661908.html
Copyright © 2011-2022 走看看