关于oracle数据库误删数据恢复
上周时候,因为一时手贱,生产上的数据被我给delete掉了。 用的是delete语句,然后很迅速的还给commit了。 于是---》杯具了。 ---------------------------------------------------- 于是找到了下面这两个语句: ALTER TABLE tablename ENABLE row movement ; flashback table tablename to timestamp to_timestamp('2012-09-13 13:00:00','yyyy-mm-dd hh24:mi:ss'); ------------------------------------------------------ 记得大概是两点半左右运行的delete---commit; 但是恢复的时候却被我理所应当的恢复到了13:00:00 (话说这时候又是手贱,另记:没事别想当然) ------------------------------------------------------ 被我误删的数据确实回来了,可是,第二天的时候忽然反应过来,那13:00:00 到14:30:00这段时间插入的数据还在不呢(测试环境下试了下,这段时间的数据应该没了,因为这张表是原始明细表,会不停地轮询目录,解析文件,插入明细。于是,这下真的慌了) ------------------------------------------------------ 幸亏后来通过其他途径找到丢失的数据了,不幸中的万幸。 ------------------------------------------------------ 所以,下次如果还有这种问题,强烈表示,恢复前一定创建临时表把当前表里面的数据备份起来,然后确认在备份后不进行插入,更新操作,这时候再使用上面的语句将表还原到某个时间,然后两张表整合下。 ------------------------------------------------------ 很罗嗦的我,表达越来越有问题了……悲催…… (编辑:淮安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |