`

Oracle 恢复删除的表

 
阅读更多

select * from recyclebin

 

flashback table  T_BAS_AGENT_INFO  to before drop

先查询,在恢复指定的表

一:表的恢复

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

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

select * from recyclebin

2.执行表的恢复

flashback table tb to before drop,这里的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');

注意:alter table testvarchar enable row movement;

这个命令的作用是,允许Oracle 修改分配给行的rowid。在Oracle
中,插入一行时就会为它分配一个rowid,而且这一行永远拥有这个rowid。闪回表处理会对EMP
完成DELETE,并且重新插入行,这样就会为这些行分配一个新的rowid。要支持闪回就必须允许Oracle 执行这个操作
分享到:
评论

相关推荐

    Oracle恢复误删除数据

    如果在删除数据后还没有进行大量的操作(只要保证被删除数据的块没有被覆写),就可以利用闪回方式直接找回删除的数据。 首先,需要确定删除数据的时间(在删除数据之前的时间就行,不过最好是删除数据的时间点)。...

    oracle 误删除表恢复

    ### Oracle误删除表恢复 在Oracle数据库管理过程中,误删表是常见的操作失误之一,而如何有效、快速地恢复这些被误删的表对于DBA(数据库管理员)来说至关重要。本文将详细介绍如何在Oracle环境下利用回收站功能...

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

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

    oracle快速删除表空间

    在管理Oracle数据库时,有时需要删除不再使用的表空间,以释放磁盘空间或优化数据库结构。本篇文章将详细介绍如何在Oracle数据库中快速删除表空间,以及相关的重要知识点。 首先,理解表空间在Oracle中的角色至关...

    oracle误删除表空间后恢复

    标题与描述概述的知识点是关于Oracle数据库中误删除表空间后的恢复方法。这涉及到Oracle数据库管理中的关键领域,包括表空间管理、数据恢复以及RMAN(Recovery Manager)的使用。下面将对这一主题进行详细解析,涵盖...

    Oracle从回收站恢复删除的表

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

    如何正确的删除Oracle表空间数据文件

    本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据文件后的恢复策略。 首先,我们来看如何使用`DROP DATAFILE`命令删除数据文件。这个命令允许管理...

    Oracle恢复误删除数据,解除锁定的等SQL语句

    在日常操作中,有时可能会发生误操作,如误删除数据或锁定问题,本篇文章将详细讲解如何在Oracle中恢复误删除数据以及解锁相关操作。 1. **恢复误删除数据** 当你不小心删除了数据库表中的数据时,Oracle提供了一...

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

    ### Oracle数据库误删除数据的不同恢复方法 #### 一、引言 在日常的数据库管理工作中,数据误删除是一个常见的问题。对于Oracle数据库来说,它提供了一系列强大的数据恢复工具和技术,帮助管理员快速有效地恢复误...

    oracle删除用户下所有表

    ### Oracle 删除用户下所有表 在Oracle数据库管理中,有时候我们可能需要清除某个用户的全部数据,这包括该用户创建的所有表。但是需要注意的是,在执行此类操作时必须格外小心,因为一旦执行了删除命令,这些数据...

    彻底删除 Oracle 的数据表

    ### 彻底删除Oracle的数据表 #### 背景与概念 在Oracle数据库管理中,删除数据表是一项常见的操作。然而,为了防止误删导致的数据丢失,Oracle引入了一个名为“回收站”(Recycle Bin)的功能。当用户执行DELETE或...

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

    本文将介绍如何查看 Oracle 表的历史记录和恢复删除的数据。 一、查看表操作历史记录 要查看表的操作历史记录,可以使用以下 SQL 语句: ```sql select * from v$sqlarea a where a.SQL_TEXT like '%表名%'; ``` ...

    oracle如何将删除的表找回

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

    oracle中truncate table后的数据恢复

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

    Oracle必杀技物理删除数据文件恢复

    本篇文章将深入探讨Oracle数据库中物理删除数据文件的恢复方法,帮助你掌握这一关键的故障恢复技能。 首先,我们要理解数据文件物理删除的后果。一旦数据文件被物理删除,不仅文件本身消失,Oracle数据库可能无法...

    oracle 恢复表数据

    对于“oracle恢复表数据”的主题,本文将深入探讨几种常见的恢复方法,并结合给定的描述与部分代码示例进行详细解释。 ### Oracle恢复表数据概览 在Oracle数据库环境中,数据丢失可能由多种原因引起,如误操作、...

    解决误删了oracle的表空间

    运行在虚拟机的Linux下,解决误删了oracle的表空间,不用重装oracle

    学习oracle创建一个表空间创建临时表空间创建用户表空间资源的权限

    在实际应用中,Oracle数据库管理员还需要考虑表空间的备份、恢复、性能优化等方面的问题。理解并熟练掌握表空间的管理和权限分配是保证数据库高效运行的关键。通过学习和实践,你可以更好地理解和管理Oracle数据库中...

    oracle误删除表数据后的恢复详解.doc

    Oracle 数据库是一个强大的企业级数据库管理系统,当意外发生如误删除表数据时,有多种方法可以尝试恢复。本文将详细讲解 Oracle 误删除表数据后的恢复策略,主要涉及 Undo Retention 参数的查询与修改,以及两种...

    Oracle的Temp表空间和UNDO表空间的处理

    然而,Oracle默认情况下会采用一种“贪心”策略来管理Temp表空间,即一旦分配的空间被使用后,即使数据被删除也不会自动释放这些空间。因此,在长时间运行后,可能需要进行Temp表空间的清理和优化。 **1.1 清理方法...

Global site tag (gtag.js) - Google Analytics