`
hxy-go
  • 浏览: 39555 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

oracle恢复删除的表或表记录的方法

阅读更多

一:表的恢复

     对误删的表,只要没有使用PURGE永久删除选项,那么从flash back区恢复回来希望是挺大的。一般步骤有:

1、从flash back里查询被删除的表

    select * from recyclebin

2.执行表的恢复

   falshback table  tb  to drop before,这里的tb代表你要恢复的表的名称。

二:表数据恢复

    对误删的表记录,只要没有truncate语句,就可以根据事务的提交时间进行选择恢复,一般步骤有:

     1、先从flashback_transaction_query视图里查询,视图提供了供查询用的表名称、事务提交时间、UNDO_SQL等字段。

     如:select * from flashback_transaction_query where table_name='TEST';
     2、执行表记录恢复

     一般先根据时间进行查询,查询语句模式为select * from tb as of timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss'); tb指表名称,time指某个时间点

      如select * from scott.test as of timestamp to_timestamp('2009-12-11 20:53:57','yyyy-mm-dd hh24:mi:ss');

    若有数据,恢复极为简单了,语句为flashback table tb to timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss');

   如flashback table scott.test to timestamp to_timestamp('2009-12-11 20:47:30','yyyy-mm-dd hh24:mi:ss');

分享到:
评论
1 楼 bjxuguoli 2010-12-16  
我公司安装的版本里,都没有 flashback_transaction_query 这个视图。

我觉得这个方法也不错。

如果在 2010-12-16 12:30:00 误删了abc表数据,那么可以执行下面的语句把删除前的全部记录找回来。

select * from abc as of timestamp to_timestamp('2010-12-16 12:25:00', 'yyyy-mm-dd hh24:mi;ss')

然后,直接用查询出来的记录再插入一遍就OK了。

相关推荐

    oracle查看表历史记录-Oracle查看表操作历史记录并恢复.pdf

    Oracle 查看表历史记录和恢复 ...查看表的历史记录和恢复删除的数据是 Oracle 数据库管理员或开发者需要掌握的重要技能。通过使用 flashback 机制和行移动功能,可以恢复删除的数据,避免数据丢失带来的损失。

    Oracle数据库误删除数据的不同恢复方法整理(超级实用)

    ### Oracle数据库误删除数据的不同恢复方法 #### 一、引言 在Oracle数据库管理中,误删除数据是一种常见的错误操作,可能导致重要的业务数据丢失。为了应对这种情况,Oracle提供了多种数据恢复的方法,包括闪回恢复...

    Oracle从回收站恢复删除的表

    ### Oracle从回收站恢复删除的表 #### 一、引言 在Oracle 10g及后续版本中,为了提供更高效的数据管理能力,引入了一个非常实用的功能——**回收站**(Recycle Bin)。这一特性使得数据库管理员能够在不慎删除表等...

    Oracle数据库误删除数据的不同恢复方法整理

    无论是单条记录的误删还是整张表的删除,Oracle都提供了多种恢复手段。合理利用这些工具和技术,不仅可以避免数据丢失的风险,还能最大限度地减少对业务的影响。当然,在实际操作过程中还需要根据具体情况选择最适合...

    ORACLE恢复删除记录

    可根据文档提示做相关操作,可以帮助您恢复点不小心误删除的数据

    利用oracle闪回技术恢复误删除的表或误更新的记录.pdf

    为了使 Oracle 数据库从任何逻辑误操作中迅速地恢复,Oracle 推出了闪回技术。 该技术首 先以闪回查询( Flashback Query)出现在 Oracle 9i 版本中,后来 Oracle 在 10g 中对该技术 进行了全面扩展,提供了闪回...

    oracle中truncate table后的数据恢复

    在Oracle数据库中,`TRUNCATE TABLE`是一个用于删除表中所有数据的命令,它与`DELETE`语句不同,不记录任何删除操作,并且在大多数情况下执行速度更快。然而,一旦执行`TRUNCATE TABLE`,数据通常无法通过常规的...

    Oracle恢复流程图(doc)

    本文将深入探讨Oracle恢复流程的关键步骤,帮助你成为真正的Oracle恢复高手。 一、Oracle恢复基础 在Oracle数据库中,恢复通常指的是从错误、故障或灾难中恢复数据的过程,包括崩溃恢复、介质恢复和归档日志恢复等...

    ORACLE truncate 数据恢复

    在Oracle数据库中,`TRUNCATE TABLE`命令用于删除表中的所有数据,但它与`DELETE`语句有所不同。`TRUNCATE`操作是DDL(Data Definition Language)的一部分,而`DELETE`是DML(Data Manipulation Language)。由于`...

    oracle 通过快照进行数据恢复

    Oracle数据库的快照技术为数据恢复提供了一种高效便捷的方法。通过合理利用快照,可以有效避免因数据丢失或误删除带来的损失。当然,除了快照之外,Oracle还提供了其他数据恢复机制,如备份与恢复、闪回技术等,这些...

    原创Oracle 物理删除数据文件恢复 危机演练

    当一个数据文件被物理删除,Oracle不再知道文件的存在,这会导致表空间或数据库的异常状态,进而影响到业务的正常运行。 恢复物理删除的数据文件主要涉及以下几个步骤: 1. **识别问题**:首先,确定哪个数据文件...

    恢复drop的表和记录

    然而,现代的数据库管理系统(DBMS)提供了多种机制来帮助恢复被误删除的表和记录,其中Oracle数据库的闪回功能尤为突出。本文将围绕“恢复drop的表和记录”这一主题,深入探讨如何利用Oracle数据库的闪回技术来恢复...

    oracle如何将删除的表找回

    在Oracle数据库中,数据的删除并不意味着立即永久丢失,尤其是当你使用`DELETE`语句删除数据后,只要没有进行大量的后续操作,就有可能通过特定的恢复机制找回已删除的表或数据。本篇文章将详细解释如何在Oracle 10g...

    Oracle Database 10g 误删表,闪电恢复

    而使用闪回表,只需执行一个简单的SQL命令,就能恢复删除的表,无需任何额外的备份操作。例如,可以使用`FLASHBACK TABLE`语句来恢复表,如下所示: ```sql FLASHBACK TABLE table_name TO BEFORE DROP; ``` 此...

    oracle恢复数据的方法

    以下是对"Oracle恢复数据的方法"这一主题的详细说明: 1. **备份与恢复基础**: - 数据库恢复的基础是定期备份,包括完整备份、增量备份和差异备份。Oracle提供RMAN(恢复管理器)工具进行备份操作。 - 备份策略...

    Oracle恢复truncate删除表的数据.pdf

    【Oracle 恢复 Truncate 删除表的数据】 在Oracle数据库中,`TRUNCATE TABLE`命令用于删除表中的所有数据,但保留表结构。与`DELETE`语句不同,`TRUNCATE`不记录任何删除操作,因此无法通过常规的事务回滚来恢复...

    Oracle数据库常见表空间故障恢复方案.pdf

    这种情况下恢复回滚表空间故障最简单的方法就是先脱机然后删掉这个坏了的或丢失的数据文件,然后以访问受限的(restricted)模式打开数据库,删除并且重建包含损坏文件的回滚段表空间。 * 确定数据库是正常关闭的。...

    oracle rac异机恢复

    Oracle RAC 异机恢复 Oracle RAC 异机恢复是指将 Oracle Real ...Oracle RAC 异机恢复是指将 Oracle RAC 环境中的数据库恢复到单机环境中,需要遵循正确的步骤和注意事项,否则可能导致恢复失败或数据丢失。

    Oracle中Truncate表的恢复方法.pdf

    Oracle 数据库中,Truncate 表是一种高效的删除表操作,但是它不会产生日志记录和回滚段空间的使用,无法使用闪回恢复。因此,需要使用 LogMiner 快速定位 Truncate 表的 SCN,并在测试环境中利用 RMAN 恢复 ...

Global site tag (gtag.js) - Google Analytics