- 积分
- 299
- 鸿鹄币
- 个
- 好评度
- 点
- 精华
- 注册时间
- 2012-1-16
- 最后登录
- 1970-1-1
- 阅读权限
- 30
- 听众
- 收听
初级工程师
|
1.Flashback Version Query功能介绍
类似于细粒度审计或LogMiner可以查看什么时间对表执行了什么操作。
例如:
老大说:这个表A中的有些数据怎么无缘无故的被人删除了,快看看是什么时候做的操作。
Flashback:没有问题,我来搞定!
2.Flashback Version Query原理
依赖于AUM
3.Flashback Version Query查询语法
flashback version query一样依赖于AUM,所以,这里就不再多说AUM的配置。flashback version query采用VERSIONS BETWEEN语句来进行查询,常用的有
VERSIONS_SCN – 系统改变号
VERSIONS_TIMESTAMP – 时间
Flashback version query是一个功能强大的工具,可以分析到什么时间执行了什么操作的问题。也可以用于记录的审计,而没有必要去开启细粒度审计功能或者是使用LOGMNR了。
4.具体实验
sec@orcl> create tabletest_fvq (a int, b varchar2(10));
Table created.
sec@orcl> insert intotest_fvq values (1,'17:00:00');
1 row created.
sec@orcl> commit;
Commit complete.
sec@orcl> insert intotest_fvq values(1,'18:00:00');
1 row created.
sec@orcl> commit;
Commit complete.
sec@orcl> update test_fvqset a=2,b='19:00:00';
2 rows updated.
sec@orcl> update test_fvqset a=3;
2 rows updated.
sec@orcl> commit;
Commit complete.
sec@orcl> delete test_fvq;
2 rows deleted.
sec@orcl> commit;
Commit complete.
sec@orcl> insert intotest_fvq values(4,'20:00:00');
1 row created.
sec@orcl> commit;
Commit complete.
sec@orcl> update test_fvqset a=5,b='21:00:00';
1 row updated.
sec@orcl> commit;
Commit complete.
sec@orcl> colVERSIONS_STARTTIME for a25
sec@orcl> colVERSIONS_ENDTIME for a25
sec@orcl> selectversions_starttime, versions_endtime, versions_operation, a, b
2 from test_fvq
3 versionsbetween timestamp minvalue and maxvalue
4 order byVERSIONS_STARTTIME
5 /
VERSIONS_STARTTIME VERSIONS_ENDTIME V A B
-------------------------------------------------- - ---------- ----------
27-APR-09 08.56.06AM 27-APR-09 08.56.27 AM I 1 17:00:00
27-APR-09 08.56.15AM 27-APR-09 08.56.27 AM I 1 18:00:00
27-APR-09 08.56.27 AM 27-APR-09 08.56.36 AM U 3 19:00:00
27-APR-09 08.56.27AM 27-APR-09 08.56.36 AM U 3 19:00:00
27-APR-09 08.56.36AM D 3 19:00:00
27-APR-09 08.56.36AM D 3 19:00:00
27-APR-09 08.56.43AM 27-APR-09 08.57.01 AM I 4 20:00:00
27-APR-09 08.57.01AM U 5 21:00:00
8 rows selected.
-- The End --
|
|