zoukankan      html  css  js  c++  java
  • Oracle 11g恢复误删除的表

    今天想删除表中数据,操作失误,点了drop,表没了。
    去网上找了下方法。

    使用 oracle Database 10g 中的闪回表特性,可以毫不费力地恢复被意外删除的表
      以下是一个不该发生却经常发生的情况:用户删除了一个非常重要的表 ― 当然是意外地删除 ― 并需要尽快地恢复。(在某些时候,这个不幸的用户可能就是 DBA!)
      Oracle9i Database 推出了闪回查询选项的概念,以便检索过去某个时间点的数据,但它不能闪回 DDL 操作,如删除表的操作。唯一的恢复方法是在另一个数据库中使用表空间的时间点恢复,然后使用导出/导入或其他方法,在当前数据库中重新创建表。这一过程需 要 DBA 进行大量工作并且耗费宝贵的时间,更不用说还要使用另一个数据库进行克隆。
      请使用 oracle Database 10g 中的闪回表特性,它使得被删除表的恢复过程如同执行几条语句一样简单。

    被删除的表 RECYCLETEST 并没有完全消失,而是重命名为一个由系统定义的名称。它存在于同一个表空间中,具有与原始表相同的结构。如果在该表上定义了索引或触发器,则它们也被重命 名,使用与表相同的命名规则。任何相关源(如过程)都失效;原始表的触发器和索引被改为放置在重命名的表上,保持被删除表的完整对象结构。
      表及其相关对象被放置在一个称为"回收站"的逻辑容器中,它类似于您 PC 机中的回收站。但是,对象并没有从它们原先所在的表空间中删除;它们仍然占用那里的空间。回收站只是一个列出被删除对象目录的逻辑结构。

    好了,开始操作。
    查看回收站中的表
    select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin
    看到了我刚删除的表,激动。
    好了,开始恢复。
    FLASHBACK TABLE 你的表名 TO BEFORE Drop
    再刷新了看一下表,已经恢复了。

    转:http://www.object8888.com/article.asp?id=278

  • 相关阅读:
    个人技术博客
    第十七周19年春学习总结
    第十六周第四次实验设计报告
    第十五周第三次实验设计报告
    第十四周第二次试验设计报告
    第十三周
    第十二周
    第十一周
    第十周作业
    只为粗暴看一下ES6的字符串模板的性能
  • 原文地址:https://www.cnblogs.com/halo/p/2642036.html
Copyright © 2011-2022 走看看