Oracle10g中引入了闪回技术,但这并不意味着所有的表都能闪回成功,当没有足够的磁盘空间,Oracle将使用回收站中的磁盘空间,而且位图连接索引和引用完整性约束也不受回收站的保护。

recyclebin参数的设置

show parameter bin       --展示是否使用了闪回技术,默认是使用闪回技术的
alter session set recyclebin=off;     --在session级别修改
alter system set recyclebin=off DEFERRED; --不加DEFERRED参数是不允许修改的,但在session一级可以修改,与10g不同

显示回收站中被删除的表

show recyclebin

删除或清空回收站中的表

purge table table_name;    --删除回收中的一张表
purge recyclebin;     --清空回收

恢复被删除的表

flashback table table_name to before drop;   

彻底删除表,不放进回收站

drop table table_name purge;

闪回错误的DML操作

在Oracle10g和11g中可以利用还原段中的数据进行恢复

设置还原段的保留时间

show parameter undo_retention    --查看保留时间,默认是15分钟
alter system set undo_retention=7200; --修改保留时

下面以一个例子来进行说明

update myemp set sal=9999;                 --将myemp中的员工都变为9999

--通过version子句查询以往的事物操作信息,version_xid为事物号,minvalue为最小值,maxvalue为最大值
select versions_xid,empno,ename,sal from myemp versions between scn minvalue and maxvalue where empno=7900;
结果显示如下图,versions_xid为空,表明我们并未提交所做的DML操作
aaarticlea/png;base64,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" alt="" />
commit;     --提交再查询,结果如图:
aaarticlea/png;base64,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" alt="" />
conn system/manager
select operation,START_SCN from flashback_transaction_query where xid=hextoraw('0A00020004050000'); --查找出事物随对应的SCN号
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAX0AAABICAIAAACV27KsAAAFeElEQVR4nO3dQY6jOBiGYc7lA/kcaDajkWbhTYtDjFiN5APkEGw4Qm1yg78XGGyD7ZAp+LujeR/1otpFjBPZH8akoPvjT/d8Pp/P519//5DVP+O/AgD36MgdAMrIHQDayB0A2sgdANrO5o63fdf1Xdd35rEVOrMWdn3X9cZ9icjshrQwvsSPhUIRkckWCkv1dIOb88Ys/+zUaOdSsm9bsiPgcnFo2NGah7T6c7n/18ZLY1y81Z6wk2S8zG6wXmm8nModb+PYnt2QR8bo43sL7392w9JuEZH5YZKPbCv3to/brJt5Gz/BbWNve+uz+o+1tdvp7WDM2s6kPcAddv28W3On1Z8P/f9Yz5YF7XFxsj1yHC9dqFBhvJzIncOOtze8y50lLyW+z8nmL9znUTJPCa/14y5K8t1l9rlTb6e3g3Nj+IjJHdzseERMFftzsf83xkutnjfac6gwqfn28fI6dwqNjp9Odb5TnJ6lVTmTfWou5Os+quR07jTauRxGwsGE3MH94nnNuf5c7P+N8VKr5432lI7xa823j5fv585+fUea853jxkuF23zv+GlelTvhEyR3oChflxAp9udK/6+Ol1o9b7XnVe7cOl6uPM+Kr6jMM2O5H7vkhY11YrnqPGudiFlH7kDTfowUj6zF/l8bL7V63mtPPVAUxsuV68qbXSKsc8isfHbDWud+WrRtv+39VO4015XXhbfJcjEL95psly8YvziOVvt/ZbzU6nm7Pfm1ncl2++P0fePlquvo2XWow3W+0UtyXXCtYXm5KV9THNy8q+rU/Kh2HT3OVP1I7uBO2eJDfWisk45a/3el8VK4JF848J9sj+RfhVlDR2O88L1BANrIHQDayB0A2sgd4PPFdaLS0urvh9wBoI3cAaCN3AGgjdwBoI3cAaCN3AGgjdwBoI3cAaCN3AGg7Uzu7P6edfsSJOWU/x/Ka363dv6qz+G/YL4DQBu5A0AbuQNAG7kDQBu5A0AbuQNAG7kDQBu5A0AbuQNAG7kDQBu5A0AbuQNA2+vcSZ9bGh+Qah5L+fIw07Q8/Tk+XqO+/W4va0n2wOL4jGM7tesBPlHaq4/lS88/Uy6SDJbk7zm35xHvdlErb9V/hVPzneQ57ZI+Rt7bwazPkJf5Ydby2Q3bE+O9jU2vbZ9uM7shhIgfD59RaEatHuATzW7o7HTs8Omzyb1NoqFWHo7E+z8fT7aZ7Poc9EZ5o/6rfDd3nBtDZJRyx5ksL8vbH4LD2956kflh7LRUsrxzt2ZNbb/ABzvkTnr8TsddrfzMWMhfWy6v1n+db+fOvP52nzuTLUzeCtvPbjjGvHFf6waTNYMNP7zYL/DBmvOdbCJTLzd2NOkCxV4tRPLyWv3XuSB3wsjPc6freuvjVKWxfTV3lh350bgvZwY3v94v8MGOuZOvYG7z/Vr5UhgqOY6L+WHSk6lmeW2/V3k/d7J1mVA+u8G68vpO2ujy9rXzLBFnRmt762V2g7GjSdaJivsFPlgpdxKvpypxbVREkvXQ8KvSDKhWfmK/33Iqd8K61+HnJI8mm1xUys4P/fhy+/K6sogz6/rx/DDJWVutHuCDNXNnOxi3y53Z/pueH5THSK38zH6/6ez3dw7XubPr6yLxnPBwbTtEQ237Wv2S59F2ytauB/g4sfPvhkC8Ip5fz66Vi6R3Rw55sX2X5WT5i/qvwfcGAWgjdwBoI3cAaCN3AGgjdwBoI3cAaCN3AGgjdwBoI3cAaOO+X8Cvx32/RLjvF6CI+34F3PcL0MZ9v7jvF6CN+35x3y9AG/f94r5fgDbu+8V9vwBt3PeL+34BarjvV8D3BgHch9wBoI3cAaCN3AGgjdwBoI3cAaCN3AGgjdwBoO0nq0zMqyZX+GAAAAAASUVORK5CYII=" alt="" />
---不知道为什么表中显示状态为unknown,按理应该是UPDATE的。
alter table scott.myemp enable row movement;    --开启表的行移动功能
flashback table scott.myemp to SCN 1996229; --恢复操作完成

也可以按照时间点恢复

flashback table scott.myemp to timestamp to_timestamp('15:36','hh24:mi');

Oracle的闪回操作的更多相关文章

  1. MySQL模拟Oralce闪回操作

    在前面的文章中我们介绍了MySQL误操作后数据恢复(update,delete忘加where条件),大概操作是通过sed命令把binlog中相关SQL误操作给逆向回来,然后导入SQL文件来恢复错误操作 ...

  2. Oracle闪回操作

    Oracle闪回操作 1. 记录当前时间或SCN 在数据库变动前记录时间或SCN SQL> select  to_char(sysdate,'YYYY-MM-DD HH24:mi:ss') fr ...

  3. Oracle的闪回技术--闪回错误的DML操作

    提交DML操作后,该操作使用的还原段就可以被其它对象使用了,为了保证闪回操作时这些数据仍然被保存在还原段中,可能需要重新设置undo_retention参数,表示一个事务提交后,该事务的数据必须保存在 ...

  4. Oracle Flashback 闪回

    Oracle 的闪回技术是一种数据恢复技术,仅能对用户逻辑错误进行恢复, 闪回针对的是提交commit的事务,没有提交的事务,使用rollback 1.闪回版本查询 Flashback Version ...

  5. ORACLE 10G 闪回建议

    Flashback Tips The following tips and restrictions apply to using flashback features. Flashback Tips ...

  6. PLSQL_闪回操作1_Flashback Query

    2014-07-02 Created By BaoXinjian

  7. ORACLE查询闪回

    在Oracle中如果错误地提交了修改操作,然后想查看修改前的值,这时候可以使用查询闪回(query flashback). 查询闪回可以根据根据一个时间值或者系统变更号(SCN)进行. 执行闪回操作, ...

  8. 利用oracle数据库闪回功能将oracle数据库按时间点恢复

    oracle更新脚本把原数据冲了,并且没有备份,急煞我也         解决办法:         oracle数据库有闪回功能:   select * from tab 可以查出已被删除的表    ...

  9. PLSQL_闪回操作4_Flashback Drop

    2014-06-25 Created By BaoXinjian

随机推荐

  1. 使用virtualenv在ubuntu上搭建python 3开发环境

    ubuntu 13.04默认的python版本是2.7的,想在其上做python3的开发会遇到问题.比如要使用pip安装软件包时,默认安装的就是python2的包.如果想安装python3的包,就需要 ...

  2. How To Install and Configure Elasticsearch on Ubuntu 14.04

    Reference: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-elasticsear ...

  3. eclipse下properties配置文件中文乱码解决

    properties文件常带有中文注释,eclipse显示是乱码. 安装插件(properties editor)可以解决properties配置文件乱码的问题. 菜单 : Help->Ecli ...

  4. iOS导航栏背景,标题和返回按钮文字颜色

    在iOS7下,默认导航栏背景,颜色是这样的,接下来我们就进行自定义,如果你仅仅是更改一下背景和颜色,代码会很简单,不需要很复杂的自定义View来替代leftBarItem 更改导航栏的背景和文字Col ...

  5. Java中常见的异常__

    作为一名游戏开发者,程序员,很自然必须熟悉对程序的调试方法.而要调试程序,自然需要对程序中的常见的异常有一定的了解,这些日子很多朋友都提出了很多问题,都是关于游戏中的报错,因此在这里我将一些常见的程序 ...

  6. JS地毯式学习二

    1.递归算法 a. function box(num){if(num<=1){ return 1;}else{ return num*box(num-1);}}alert(box(5)); b. ...

  7. invalid conversion from 'void* (*)()' to 'void* (*)(void*)'

    void *thread1() ], NULL, thread1, NULL)) != ) 提示:invalid conversion from 'void* (*)()' to 'void* (*) ...

  8. cglib 动态代理基础篇

    cglib 动态代理基础篇 CGlib是什么? CGlib是一个强大的,高性能,高质量的Code生成类库.它可以在运行期扩展Java类与实现Java接口. 下面我们将通过一个具体的事例来看一下CGli ...

  9. ansible register when: result | succeeded when: item.rc != 0

    ansible register 这个功能非常有用.当我们需要判断对执行了某个操作或者某个命令后,如何做相应的响应处理(执行其他 ansible 语句),则一般会用到register . 举个例子: ...

  10. 配置QQ企业邮箱小结

    https://exmail.qq.com/login 1,注册管理员账号 2,添加域名 3.设置MX记录 记录类型选:MX记录 主机记录(RR):不填(非万网可以填写@) 记录值与MX优先级分别为: ...