啊!假如说我有一张表叫t1,今天一不小心把执行了如下命令:
delete from t1全部删除了。
也许到这里你还并不害怕,不行就flashback就是了。抱歉,我今天又做了一个purge recyclebin
擦,完蛋了。彻底无法恢复了吗?
当然不是,要知道recyclebin是存在内存中的,真正的数据肯定是保存在文件里的,那么从哪里恢复啊,当然是重做日志文件,找到重做日志文件里的SCN号,然后缩小SCN号范围,找到待恢复数据。
第一步:select dbms_flashback.get_system_change_number from dual;-->查找当前的SCN号(这里是7455407),如果你知道删除数据前的SCN号就更简单了
第二步:select count(*) from t1 as of scn 7455407;-->查询当前SCN下的数据(当前查到的是0,因为数据已经删除了)
第三步:缩小SCN范围,即往前推。
select count(*) from t1 as of scn7433000;-->在这个点上查到数据(17110条)。
第四步:insert into t1 select * from t1 as of scn 7443000;-->恢复数据
哈哈,是不是很简单啊!这才是终极必杀技哦!
就问6不6?
6
6
6
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。