今日一不小心,手抖,删除了oracle的某张表,drop掉了,数据也删了,绝对不是删库跑路,是人都有手抖的时候吧,还好及时恢复了过来,记录下恢复过程。
新建一张表:A_GOOL_PET,插入2条数据;
然后假装一不小心drop掉了。
被drop掉的表会保存在recyclebin表中,查询出来:
select * from recyclebin t where t.original_name = 'A_GOOL_PET' order by t.droptime desc
执行闪回操作:
flashback table "A_GOOL_PET" to before drop rename to A_GOOL_PET_new;
然后表和数据都恢复了,但如果是sys用户drop的表结构,无法按此方法恢复
如果不是drop,执行的delete,还可以用这种方式恢复:
select * from A_GOOL_PET_new as of timestamp to_timestamp('2021-10-26 20:26:00','yyyy-mm-dd hh24:mi:ss')
所以平常手误删了数据,不要慌,还是有办法恢复的[捂脸]。