oracle闪回使用以及删除存储过程恢复

oracle恢复删除的数据

恢复删除的存储过程

SELECT * FROM dba_source as of timestamp (systimestamp -interval‘600‘second)

分为两种方法:scn和时间戳两种方法恢复。

一、通过scn恢复删除且已提交的数据

  1、获得当前数据库的scn号

    select current_scn from v$database; (切换到sys用户或system用户查询)

    查询到的scn号为:1499223

  2、查询当前scn号之前的scn

    select * from 表名 as of scn 1499220; (确定删除的数据是否存在,如果存在,则恢复数据;如果不是,则继续缩小scn号)

  3、恢复删除且已提交的数据

    flashback table 表名 to scn 1499220;

二、通过时间恢复删除且已提交的数据

  1、查询当前系统时间

    select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss‘) from dual;

  2、查询删除数据的时间点的数据

    select * from 表名 as of timestamp to_timestamp(‘2013-05-29 15:29:00‘,‘yyyy-mm-dd hh24:mi:ss‘);  (如果不是,则继续缩小范围)

  3、恢复删除且已提交的数据

    flashback table 表名 to timestamp to_timestamp(‘2013-05-29 15:29:00‘,‘yyyy-mm-dd hh24:mi:ss‘);

    注意:如果在执行上面的语句,出现错误。可以尝试执行 alter table 表名 enable row movement; //允许更改时间戳

一:表的恢复

对误删的表,只要没有使用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;

时间: 2024-09-30 21:07:57

oracle闪回使用以及删除存储过程恢复的相关文章

Oracle闪回查询恢复delete删除数据

Flashback query(闪回查询)原理 Oracle根据undo信息,利用undo数据,类似一致性读取方法,可以把表置于一个删除前的时间点(或SCN),从而将数据找回. Flashback query(闪回查询)前提: SQL> show parameter undo; NAME                                TYPE       VALUE ------------------------------------ ----------- --------

Oracle闪回技术(Flashback)

闪回技术有闪回表.闪回删除.闪回查询.闪回事务查询.闪回事务.闪回数据库.闪回数据归档.其中,闪回查询.闪回事务查询用来“观察”过去:闪回数据归档并不是一个独立的功能,其功能是扩展闪回查询的时间窗口:闪回表.闪回删表能够以表为单位“回到”过去:闪回事务能够以事务为单位“回到”过去:闪回数据库能够以数据库为单位“回到”过去. 一. 闪回表(Flashback Table) 闪回表是利用UNDO表空间的撤销数据,所以能把表闪回到多久之前受到undo_retention,UNDO表空间的数据文件是否启

Oracle 闪回特性(FLASHBACK DATABASE)

--===================================== -- Oracle 闪回特性(FLASHBACK DATABASE) --===================================== 闪回技术通常用于快速简单恢复数据库中出现的认为误操作等逻辑错误,从闪回的方式可以分为基于数据库级别闪回.表级别闪回.事务 级别闪回,根据闪回对数据的影响程度又可以分为闪回恢复,闪回查询.闪回恢复将修改数据,闪回点之后的数据将全部丢失.而闪回查询则可 以查询数据被DML的

oracle闪回查询和闪回数据库

oracle闪回查询和闪回数据库 区别: 数据闪回查询,只需要启用撤销表空间自动管理回滚信息. 使用闪回删除技术和闪回数据库技术,需要启动回收站,闪回恢复区.(归档模式使用) 具体设置: ---cmd sqlplus nolog sys as sysdba hanatech 具体设置----数据闪回查询的设置: 查看撤销表信息undo: show parameter undo; 设置撤销表信息: alter system set undo_managerment=auto;设置为auto才可以使

Oracle 闪回

Oracle闪回技术 1.Flashback Database 2.Flashback Drop 3.Flashback Table 4.Flashback Query 1.Flashback Database(利用闪回日志恢复) 描述:Oracle Flashback Database特性允许通过SQL语句Flashback Database语句,让数据库前滚到当前的前一个时间点或者SCN.闪回数据库可以迅速将数据库回到误操作或人为错误的前一个时间点,如ctrl+Z操作,可以不利用备份就快速的

Oracle闪回

Oracle闪回作用:自动基于磁盘的备份与恢复,能把表恢复到过去的某个时间点或者SCN. 1.查看闪回区 SQL> show parameter db_recovery_file_dest;  查看闪回区详细信息 SQL> select flashback_on from v$database;  查看闪回区是否开启 2.修改闪回功能 SQL> startup mount;               数据库启动到mount下 SQL> alterdatabase flashbac

Oracle 闪回 找回数据的实现方法

Oracle 闪回 找回数据的实现方法 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复.这篇文章主要介绍了Oracle 闪回 找回数据的实现方法,需要的朋友可以参考下 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复(多数闪回功能都能在数据库联机状态下完成).需要注意的是,闪回技术旨在快速恢复逻辑错误,对于物理损坏或是介质丢失的错误,闪回技术就回天乏术了,还是

oracle闪回区介绍与监控

Oracle闪回区已经有了好几载的岁月了,在10g的时候就被推出一直延续到现在.Oracle闪回区是为RMAN准备的, 尽管抛开它我们可以同样完成数据库备份恢复的相关工作,Oracle依旧强烈推荐使用且它让其成为RMAN的组件之一. 这是因为该区域可集中简化管理所有和备份恢复工作,这也是其魅力所在.本文描述了Oracle闪回区的特性及其配置闪回区,监控闪回区等. 1.闪回区特性及其配置 --闪回区 就是分配一个特定的目录位置(普通磁盘上的目录或ASM磁盘)来存放一些特定的恢复文件,用于集中和简化

【读书笔记】oracle闪回技术

1.闪回技术有三种,分别是闪回数据库.闪回查询.闪回删除. 闪回数据库是把数据库恢复到某一个时间点:闪回查询是查询表的历史记录:闪回删除是把drop掉的表还原回来(表存在于recyclebin中). 2.三种闪回技术的限制: 闪回数据库受闪回日志大小的限制: 闪回查询受撤销保留时间限制: 闪回删除受表可用空间限制: 但可以通过配置Flashback Data Archive来无限期地存储行的前映像.(如何对表启用?) 3.闪回数据库的配置: 1)确保数据库处于归档模式中,如果不是归档模式则要进行