分享

恢复oracle中被删除的表的数据

 昵称7747500 2012-03-30

恢复oracle中被删除的表的数据

Posted on 2007-05-22 16:30 bluoy 阅读(2202) 评论(2)  编辑  收藏
问题:同事不小心把项目DB中的一个表的数据delete all了。DB版本oracle 10g。
网上简单搜了一下,搞定。以下是过程:
Oracle 10g开始,当我执行Drop Table时,Oracle也会把被删除的表放到数据库回收站(Database Recyclebin)里。这样我们就可以用flashback table命令恢复被删除的表,语法:
   Flashback table 表名 to before drop;

开始恢复,执行以下命令:
flashback table tmm2076 TO TIMESTAMP to_timestamp('2007-05-22
12:00:00','yyyy-mm-dd hh24:mi:ss')
弹出ORA-08189错误,需要执行以下命令先:
alter table tmm2076 enable row movement

这个命令的作用是,允许oracle修改分配给行的rowid。

然后再flashback,数据被恢复完毕。

Feedback

# re: 恢复oracle中被删除的表的数据  回复  更多评论   

2007-11-01 11:45 by kuaile
请问 到底那个步骤先啊
我在数据库了的PCS表里的记录被我全删除了,怎么恢复?
谢谢

# re: 恢复oracle中被删除的表的数据[未登录]  回复  更多评论   

2007-11-02 15:31 by bluoy
@kuaile
1. alter table tmm2076 enable row movement
2. flashback table PCS TO TIMESTAMP to_timestamp('2007-05-22
12:00:00','yyyy-mm-dd hh24:mi:ss')

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多