博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flashback Version/Transaction Query
阅读量:6481 次
发布时间:2019-06-23

本文共 3341 字,大约阅读时间需要 11 分钟。

1、应用Flashback Version Query查询记修改版本

SQL> select dbms_flashback.get_system_change_number from dual; --查询当前SCN值GET_SYSTEM_CHANGE_NUMBER------------------------1574142SQL> 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 I11 J12 K13 L14 M15 N116 O117 P118 Q119 R120 S1 /2 A3 B4 C5 D6 E7 F8 G9 H已选择20行。SQL> delete flash_tab where id<5;已删除4行。SQL> commit;提交完成。SQL> select * from flash_tab;ID VL---------- --10 I11 J12 K13 L14 M15 N116 O117 P118 Q119 R120 S5 D6 E7 F8 G9 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 0900170004040000201 A1 1574192 I 03001200340400004 C 1574180 D 050015001B0400003 B 1574180 D 050015001B0400002 A 1574180 D 050015001B0400001 / 1574180 D 050015001B040000120 S 1574157 U 0600180005040000119 R 1574157 U 0600180005040000118 Q 1574157 U 0600180005040000117 P 1574157 U 0600180005040000116 O 1574157 U 060018000504000010 I11 J12 K13 L14 M15 N16 O 157415717 P 157415718 Q 157415719 R 157415720 S 15741571 / 15741802 A 15741803 B 15741804 C 15741805 D6 E7 F8 G9 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-----------1586922SQL> select * from flash_tab;ID VL---------- --1 a2 tsSQL> 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_sql2 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

 

转载地址:http://fffuo.baihongyu.com/

你可能感兴趣的文章
利用ItextPdf、core-renderer-R8 来生成PDF
查看>>
js滚动加载到底部
查看>>
memcache数据库和redis数据库的区别(理论)
查看>>
第三十九天
查看>>
论程序员加班的害处
查看>>
基于HTML5的WebGL设计汉诺塔3D游戏
查看>>
WPF资料链接
查看>>
再次更新
查看>>
利用Windows自带的Certutil查看文件MD5
查看>>
开篇,博客的申请理由
查看>>
[JSOI2008]星球大战starwar BZOJ1015
查看>>
iOS项目分层
查看>>
IntelliJ IDEA 注册码
查看>>
String字符串的截取
查看>>
Shell编程-环境变量配置文件
查看>>
Struts2和Spring MVC的区别
查看>>
git代码冲突
查看>>
git bash 风格调整
查看>>
HDOJ-1010 Tempter of the Bone
查看>>
日本开设无人机专业,打造无人机“人才市场”
查看>>