怎么查看表格最近修改时间?如何看某张表最近一段时间的历史操作记录
最近发现某张表数据有点异常,想看下这段时间这张表是否做了一些改动,因为审计没针对这张表单独审计,所以不好查询到,就利用了闪回来查看Oracle表历史时刻数据,因为数据比较敏感,所以单独做了个实验来演示。
利用闪回查看Oracle表历史时刻数据测试数据准备
create table nc633gold.t1 as select * from dba_objects; select * from nc633gold.t1;
模拟误删数据
delete from nc633gold.t1 where owner='SYS'; delete from nc633gold.t1 where owner='PUBLIC'; delete from nc633gold.t1;
查看表历史时刻数据
select * from nc633gold.T1 AS OF TIMESTAMP to_timestamp('2019-09-16 10:25:00','yyyy-mm-dd hh24:mi:ss');
查看过去某一段时间内对表的操作,以确认需要恢复到的时间点
select SQL_TEXT, LAST_ACTIVE_TIME from v$sqlarea where LAST_ACTIVE_TIME > to_date('2019-09-16 10:25:00','yyyy-mm-dd hh24:mi:ss') and SQL_TEXT like '%nc633gold.t1%' order by 2 desc;
利用flashback table恢复表到过去某一时刻
alter table nc633gold.t1 enable row movement; flashback table nc633gold.t1 to timestamp to_timestamp('2019-09-16 10:35:00','yyyy-mm-dd hh24:mi:ss'); alter table nc633gold.t1 disable row movement;
测试
select count(*) from nc633gold.t1;
觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com