Oracle快速恢复误删数据的方法
2019/09/17 19:13:57 来源:Linux社区 作者:零度的雨1205

日常工作中,我们经常会出现误删Oracle数据的情况,当delete和drop(未加purge)表时,我们可以通过如下进行快速恢复:

(1) delete 误删数据时:

我们可以通过构造一致性读的方式来进行恢复,前提是及时发现误删的数据,同时当前的undo块或者撤销快未被覆盖

create table quick_table as

select * from emp_temp as of timestamp (SYSTIMESTAMP - INTERVAL '60' MINUTE);

此时 quick_table就是包含了该表60分钟前的数据,这里的60可以根据实际情况来改变。

(2) drop 误删表时:

前提是我们没有使用drop table XX purge方式删除表,而是通过drop table XX的方式进行删除的,这时我们可以通过:

flashback table XXX to before drop;

以此来进行快速的恢复。

总结

以上的方法都有局限性,这就要求我们在日常工作中操作数据库时,一定要格外小心,同时做好相应的备份工作,保证每天都有备份,做到有备无患。

更多Oracle相关信息见Oracle 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=12

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2019-09/160692.htm


7

本栏最新