Flashback Version/Transaction Query
1、应用Flashback Version Query查询记修改版本
SQL> select dbms_flashback.get_system_change_number from dual; --查询当前SCN值 GET_SYSTEM_CHANGE_NUMBER
------------------------
1574142 SQL> update flash_tab set id=id+100 where id>15; 已更新5行。 SQL> commit; 提交完成。 SQL> delete flash_tab where id<15; 已删除14行。 SQL> rollback; 回退已完成。 SQL> select * from flash_tab; ID VL
---------- --
10 I
11 J
12 K
13 L
14 M
15 N
116 O
117 P
118 Q
119 R
120 S
1 /
2 A
3 B
4 C
5 D
6 E
7 F
8 G
9 H 已选择20行。 SQL> delete flash_tab where id<5; 已删除4行。 SQL> commit; 提交完成。 SQL> select * from flash_tab; ID VL
---------- --
10 I
11 J
12 K
13 L
14 M
15 N
116 O
117 P
118 Q
119 R
120 S
5 D
6 E
7 F
8 G
9 H 已选择16行。 SQL> insert into flash_tab values(201,'A1'); 已创建 1 行。 SQL> commit; 提交完成。 SQL> insert into flash_tab values(202,'B1'); 已创建 1 行。 SQL> COMMIT; 提交完成。 SQL> SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL; GET_SYSTEM_CHANGE_NUMBER
------------------------
1574208
执行Version Query查询flash_tab表中记录:
SQL> select id,vl,versions_startscn,versions_endscn,versions_operation,versions_xid from flash_tab versions between scn 1574142 and 1574208; ID VL VERSIONS_STARTSCN VERSIONS_ENDSCN V VERSIONS_XID
---------- -- ----------------- --------------- - ----------------
202 B1 1574198 I 0900170004040000
201 A1 1574192 I 0300120034040000
4 C 1574180 D 050015001B040000
3 B 1574180 D 050015001B040000
2 A 1574180 D 050015001B040000
1 / 1574180 D 050015001B040000
120 S 1574157 U 0600180005040000
119 R 1574157 U 0600180005040000
118 Q 1574157 U 0600180005040000
117 P 1574157 U 0600180005040000
116 O 1574157 U 0600180005040000
10 I
11 J
12 K
13 L
14 M
15 N
16 O 1574157
17 P 1574157
18 Q 1574157
19 R 1574157
20 S 1574157
1 / 1574180
2 A 1574180
3 B 1574180
4 C 1574180
5 D
6 E
7 F
8 G
9 H 已选择31行。
2.使用Flashback Transaction Query查询事务信息
用户在执行闪回事务查询之前,必须为用户授予适当的DBMS_FLASHBACK包上的权限。
grant execute on dbms_flashback to scott;
grant select any transaction to scott;
--------
开启flashback:
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database flashback on;
SQL> alter database open;
SQL> conn / as sysdba;
已连接。
SQL> alter database add supplemental log data; 数据库已更改。
-------------------------------------------------------
启用重做日志流,否则查询Flashback_transaction_query的undo_sql列为空,并且OPERATION列为UNKNOWN,
SQL> alter database add supplemental log data; Database altered.
测试案例:
SQL> conn scott/tiger;
已连接。
-------------------
SQL> select current_scn from v$database; CURRENT_SCN
-----------
1586922 SQL> select * from flash_tab; ID VL
---------- --
1 a
2 ts SQL> update flash_tab set vl='b' where id=1; 已更新 1 行。 SQL> commit; 提交完成。 SQL> insert into flash_tab values(3,'c'); 已创建 1 行。 SQL> commit; 提交完成。 SQL> select current_scn from v$database; CURRENT_SCN
-----------
1586956 ======================
SQL> select xid,commit_scn,commit_timestamp,operation,undo_sql
2 from flashback_transaction_query q where q.xid in( select versions_xid from scott.flash_tab versions between scn 1586922 and 1586956); XID COMMIT_SCN COMMIT_TIMESTAMP OPERATION UNDO_SQL
---------------- ---------- ---------------- -------------------------------- --------------------------------------------------------------------------------
02001200FE030000 1586949 2015/1/10 17:03: INSERT delete from "SCOTT"."FLASH_TAB" where ROWID = 'AAASZaAAEAAAAJ2AAB';
02001200FE030000 1586949 2015/1/10 17:03: BEGIN
06001C000A040000 1586940 2015/1/10 17:03: UPDATE update "SCOTT"."FLASH_TAB" set "VL" = 'a' where ROWID = 'AAASZaAAEAAAAJ0AAC';
06001C000A040000 1586940 2015/1/10 17:03: BEGIN
Flashback Version/Transaction Query的更多相关文章
- Flashback version/Transaction Query,FlashbackTable
Flashback version Query相对于Flashback Query 只能看到某一点的对象状态, Oracle 10g引入的Flashback Version Query可以看到过去某个 ...
- Flashback Version Query、Flashback Transaction Query快速闪回细粒度数据
Flashback Version Query 闪回版本查询 使用Flashback Version Query 返回在指定时间间隔或SCN间隔内的所有版本,一次commit命令就会创建一个版本. ...
- Oracle Flashback Transaction Query with Oracle Flashback Version Query
Oracle Flashback Transaction Query with Oracle Flashback Version Query In this example, a database a ...
- 闪回之 Flashback Query (dml表、过程、函数、包等)、Flashback version Query
Flashback Query 背景:Flashback 是 ORACLE 自 9i 就开始提供的一项特性,在 9i 中利用oracle 查询多版本一致的特点,实现从回滚段中读取表一定时间内操作过的数 ...
- 利用flashback transaction query新特性进行事务撤销
具备了flashback version query查询的基础,我们就可以进行基于flashback version query的恢复.这就是flashback transaction query.f ...
- PLSQL_闪回操作3_Fashback Transaction Query
2014-12-09 Created By BaoXinjian
- Hibernate有五大核心接口,分别是:Session Transaction Query SessionFactoryConfiguration
Session接口: Session接口 Session 接口对于Hibernate 开发人员来说是一个最重要的接口.然而在Hibernate中,实例化的Session是一个轻量级的类,创建和销毁它都 ...
- ocp 1Z0-043 131-205题解析
131. Which three methods can you use to run an Automatic Database Diagnostic Monitor (ADDM) analysis ...
- PLSQL_闪回操作2_Fashback Version Query
2014-12-09 Created By BaoXinjian
随机推荐
- [Hapi.js] Logging with good and good-console
hapi doesn't ship with logging support baked in. Luckily, hapi's rich plugin ecosystem includes ever ...
- Java中String直接赋字符串和new String的区别
解析Java中的String对象的数据类型 1. String是一个对象. 因为对象的默认值是null,所以String的默认值也是null:但它又是一种特殊的对象,有其它对象没有的一些特性. 2. ...
- docker虚拟化之将容器做成镜像
1,docker ps -a 选择要启动的容器. 2,docker start 容器+ID 启动容器 3,docker exec -i -t 容器ID /bin/bash 进入容器 这里的/ ...
- 2016 ACM/ICPC Asia Regional Shenyang Online
I:QSC and Master 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5900 题意: 给出n对数keyi,vali表示当前这对数的键值和权值 ...
- 配置元素customErrors
Asp.net配置文件的配置方式,其实在MSDN里面是写得最清楚的了.可惜之前一直未曾了解到MSDN的强大. 先贴个地址:http://msdn.microsoft.com/zh-cn/library ...
- AJAX 控件集之TextBoxWatermark(水印文本框)控件
功能: 可以让TextBox控件初始化的时候拥有水印文字.属性: TargetControlID :要使用具有水印效果的TextBox控件ID. WatermarkCssCla ...
- pca图像识别
代码下载:基于PCA(主成分分析)的人脸识别 人脸识别是一个有监督学习过程,首先利用训练集构造一个人脸模型,然后将测试集与训练集进行匹配,找到与之对应的训练集头像.最容易的方式是直接利用欧式距离计算测 ...
- 1218.1——OC中的常见关键字及一些基本方法
OC常见的关键字介绍: @ 看到这个关键字,我们就应该想到,这是Object-C对C语言的扩展,例如@interface XXX. @interface 声明类 @implementation 实现类 ...
- hitTest:withEvent:方法(此方法可实现点击穿透、点击下层视图功能)
此方法可实现点击穿透.点击下层视图功能 一. hitTest:withEvent:调用过程 iOS系统检测到手指触摸(Touch)操作时会将其放入当前活动Application的事件队列,UIAppl ...
- UVA 719 / POJ 1509 Glass Beads (最小表示法/后缀自动机)
题目大意: 给出一个长度为N的字符串,求其字典序最小的循环同构. N<=10W. 算法讨论: 算法一.最小表示法.定义题. 算法二.后缀自动机. Codes: #include <iost ...