Oracle中表被删除或数据被错误修改后的恢复方法 您所在的位置:网站首页 表格数据分列后数据丢失怎么恢复回来 Oracle中表被删除或数据被错误修改后的恢复方法

Oracle中表被删除或数据被错误修改后的恢复方法

2024-07-14 18:42| 来源: 网络整理| 查看: 265

表被修改或删除后可以按照以下步骤恢复: 1、删除目标表(表被错位修改的情况,如果被删除就没有这步了);

2、删除表后,可以采用如下操作: 在user_recyclebin中找到最近操作过的表名称,然后用闪回(只能用于10G及以上版本)。 FLASHBACK TABLE TABLE_NAME TO BEFORE DROP;

3、如果是删了或修改里面的数据,可以先建立一个快表将删除修改之前状态的数据找回到这个表中: CREATE TABLE QUICK_TABLE AS SELECT * FROM TABLE_NAME AS OF TIMESTAMP SYSDATE-1/24 (一小时前的),减去的时间可以自己定 如:select * from TABLE_NAME  AS OF TIMESTAMP  (SYSTIMESTAMP - INTERVAL '1' MINUTE)

4.恢复后的TABLE_NAME是回收站的表不可以用,最后可以直接把QUICK_TABLE改成需要的TABLE_NAME

注意:这个恢复的QUICK_TABLE表好像不能恢复主键和外键,所有在删除表之前最好把源表的主键、外键和索引的语句拷贝下来

 

样例(比如表AAA内数据被错位修改): select * from user_recyclebin; 可以查询到所有被删除的记录,从记录中可以找到AAA,找到表名后,作如下操作 FLASHBACK TABLE AAA TO BEFORE DROP; 恢复到5个小时前 CREATE TABLE QUICK_TABLE AS SELECT * FROM AAA AS OF TIMESTAMP SYSDATE-5/24 恢复到10分钟之前 CREATE TABLE QUICK_TABLE AS SELECT * FROM AAA AS OF TIMESTAMP  (SYSTIMESTAMP - INTERVAL '10' MINUTE)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有