`

在Oracle数据库操作中,经常会有不小心误删除数据

 
阅读更多

Oracle数据库操作中,经常会有不小心误删除数据、drop表的情况出现。以前,这种情况发生后,开发人员通常会去求助DBA或管理者,使用数据库备份恢复去找回这些数据。

从oracle 9i、10g开始,你可以不必去用备份来恢复了。有一种快速恢复方法,称之为flashback。你可以flashback query,也可以flashback table。

一、FLASHBACK QUERY

适应范围:表中的数据持续变化,需要看到某个时间点错误删除修改了某些记录,可以根据这些记录再进行数据恢复。

--闪回到15分钟前

select *  from orders   as of timestamp (systimestamp - interval '15' minute)   where ......

这里可以使用DAY、SECOND、MONTH替换minute,例如:

SELECT * FROM orders AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '2' DAY)

--闪回到某个时间点

select  *   from orders   as of timestamp   to_timestamp ('01-Sep-04 16:18:57.845993', 'DD-Mon-RR HH24:MI:SS.FF') where ...

--闪回到两天前

select * from orders   as of timestamp (sysdate - 2) where.........

二、FLASHBACK TABLE

1、表已经drop掉之后使用,可以快速恢复。

flashback table orders to before drop;

如果drop的表已经重新建立了一个同名称的表,那么需要加上rename to子句。

flashback table order to before drop   rename to order_old_version;

2、表的数据错误删除或修改后,没有后续数据变化,可以快速恢复。

第一步,首先要启用行迁移

alter table order enable row movement;

第二步,闪回表

到15分钟前:

flashback table order   to timestamp systimestamp - interval '15' minute;

到某个时间点:

FLASHBACK TABLE order TO TIMESTAMP    TO_TIMESTAMP('2007-09-12 01:15:25 PM','YYYY-MM-DD HH:MI:SS AM')

分享到:
评论

相关推荐

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

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

    Oracle恢复误删除数据

    然而,在实际操作中,误删除数据是一种常见的错误。因此,了解如何恢复误删除数据是非常重要的。本文将详细介绍 Oracle 恢复误删除数据的方法。 delete 方法的恢复 在 Oracle 中,delete 方法可以使用闪回方法恢复...

    数据库误删除东西恢复

    在日常的数据库管理中,误删除数据是一种常见的问题。如何快速恢复误删除的数据是数据库管理员的一项重要任务。本文将介绍如何在 Oracle 数据库中恢复误删除的数据。 1. 使用 Flashback 语句恢复数据 在 Oracle 10...

    完全删除Oracle数据库

    在IT领域,尤其是在数据库管理与系统维护中,彻底删除Oracle数据库是一项复杂但有时必要的操作,尤其是在需要重新安装或更改配置时。以下是从标题、描述、标签以及部分内容中提炼出的关键知识点,旨在指导用户如何在...

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

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

    Oracle通过DBF恢复数据

    在日常工作中,Oracle数据库作为企业级数据管理系统之一,经常面临着各种意外情况,如误删除、误操作或系统故障导致的数据丢失。在这种情况下,如何有效地恢复数据成为了一项重要的技能。本文将详细介绍在没有备份的...

    如何手工创建Oracle数据库

    首先,我们来回顾一下这个误操作的教训:在执行任何可能破坏数据的操作时,DBA必须格外小心。在这个例子中,使用`rm`命令删除了正在运行的数据库的数据文件,这无疑是一个灾难性的错误。因此,DBA应避免使用危险命令...

    oracle11G数据库卸载

    - 在执行注册表清理步骤时需格外小心,误删除关键系统键值可能导致系统不稳定或其他问题。 通过遵循以上步骤,您可以确保彻底卸载Oracle 11G数据库,并为后续的操作或重装提供一个干净的基础环境。

    如何找回“丢失”的数据(Oracle 10g)

    我们在进行数据库操作时,可能会因为不小心而导致误删除大量的有价值的数据. 在ORACLE10G数据库运行正常的性况下,我们需要掌握这个极为实用的技术来弥补这个错误. 本资料提供了完整的PPT,操作指南相关的命令,相关操作...

    Oracle 误删除后的闪回方法

    在Oracle数据库管理中,数据安全至关重要,而意外的数据删除往往是管理员面临的严峻挑战。"Oracle 误删除后的闪回方法"是解决这类问题的关键技术。Oracle提供了多种强大的工具和功能,帮助用户在数据丢失后迅速恢复...

    Oracle数据文件移动方法.pdf

    在Oracle数据库管理过程中,由于存储设备容量限制或为了优化性能等因素,有时需要对数据库的数据文件进行移动操作。本篇文章将详细介绍如何安全有效地将Oracle数据库的数据文件、控制文件以及重做日志文件等关键组件...

    Oracle闪回技术在数据恢复中的应用.pdf

    如果用户不小心删除了一个表,闪回错误修正功能可以让用户轻松地恢复这个被删除的表,只要它还在回收站中。 综上所述,Oracle闪回技术提供了一套全面的数据恢复解决方案,大大提高了数据库的可用性和安全性。从...

    oracle误删数据表还原的二种方法(oracle还原)

    在Oracle数据库管理中,数据安全至关重要,而意外删除数据表是一种常见的错误操作。本文将详细介绍两种在Oracle中恢复误删数据表的方法。 1. **利用Undo表空间和Flashback功能** Oracle数据库提供了强大的闪回功能...

    oracle 10g flashback(数据恢复)

    Flashback 技术不仅仅是一种简单的数据恢复工具,它提供了一系列功能,使得用户能够在多种情况下恢复数据,包括但不限于误删除、数据损坏、错误更新等场景。 #### Oracle Flashback Database **Oracle Flashback ...

    Oracle中有后悔药卖吗?Oracle中的回闪查询: Oracle 10g 回闪实验文档

    这对于因误删除或更新数据而导致的问题非常有用。 ```sql -- 将表恢复到特定时间点 SQL> flashback table my_table to timestamp TO_TIMESTAMP('2023-03-15 12:00:00', 'YYYY-MM-DD HH24:MI:SS'); ``` #### 四、...

    BLOG_Oracle 回收站及flashback drop_LHR.pdf

    Oracle数据库中的回收站功能是在Oracle数据库10g版本中引入的,其主要作用是防止用户不小心删除数据库对象。当数据库对象(如表、视图、索引等)被删除时,它们并不是立即从数据库中永久移除,而是暂时放入回收站中...

    Oracle dissassembling_the_data_block

    ### Oracle 数据块拆解与 BBED 工具详解 ...虽然 BBED 提供了强大的功能,但在使用过程中也需要格外小心,避免对数据库造成不可逆转的损害。因此,在进行任何涉及数据块修改的操作之前,最好先进行充分的测试和备份。

    Oracle教程 误添加数据文件删除方法

    在管理Oracle数据库时,有时候可能会出现误操作,例如不小心向错误的表空间添加了数据文件。本教程将详细介绍在Oracle 10g R2版本中,如何正确处理这种情况,以及如何删除误添加的空数据文件。 首先,我们需要理解...

    Oracle sequence 重置(失效恢复)

    2. **误操作:** 如果不小心删除了Sequence,或者手动修改了Sequence的当前值,也可能导致Sequence失效。 #### 三、Sequence重置方法 下面将详细介绍如何通过SQL脚本来重置Sequence,使其恢复正常功能。 ### SQL...

    如何彻底删除计算机上的Oracle

    彻底删除计算机上的Oracle数据库软件是一项需要细致操作的任务,因为Oracle不仅仅是卸载程序那么简单,它还涉及到注册表项、服务、启动项以及系统环境变量等多个层面的清理。以下是一份详尽的步骤指南,帮助您完全...

Global site tag (gtag.js) - Google Analytics