我们在开发和运维过程中,经常遇到数据被误删除的情况.无论是在应用开发中的Bug,还是修改数据的时候,如果提交了错误数据修改结果,会带来很多问题.一般来说,一旦提交commit事务,我们是不能获取到之前的数据情况,除非使用较复杂的数据恢复手段,利用备份数据恢复. 但是在Oracle中,可以使用其闪回FlashBack特性来解决这个问题.首先,声明一点,闪回Flashback的范围很大,包括数据库.表.数据均是可以Flashback的,但是机制差别很大.本文说的是简单的数据flashback,用来快…
利用闪回查看Oracle表历史时刻数据 1.查看表历史时刻数据 select * from tab_test AS OF TIMESTAMP to_timestamp('20140917 10:00:00','yyyymmdd hh24:mi:ss'); 2.利用flashback table恢复表到过去某一时刻 alter table tab_test enable row movement; flashback table tab_test to timestamp ('20140917 1…
Oracle 中利用闪回查询确定某表在某时间点之后的修改内容: 1.查看 DELETE 及 UPDATE 操作修改的数据: SQL> SELECT * FROM tab AS OF TIMESTAMP  to_timestamp('time_point', 'yyyy-mm-dd hh24:mi:ss') MINUS SELECT * FROM tab; 其中将查询得 tab 表在 time_point 时点之后因 DELETE 及 UPDATE 操作修改的数据. 2.查看 INSERT 操作修…
-------------------------与其他数据库相比,Oracle的闪回让开发者多了一条选择的路. Flashback的目的 先看下Oracle官方文档中的解释: Oracle Flashback Technology is a group of Oracle Database features that that let you view past states of database objects or to return database objects to a prev…
实际工作中,我们经常会遇到一些情况,误删除某些表或某些表的某些记录,这时候就需要我们将这些记录重新插入进去.如何才能解决这个问题呢? Oracle的Flashback query(闪回查询)为我们解决了这个问题 ,他的原理是Oracle根据undo信息,利用undo数据,类似一致性读取方法,可以把表置于一个删除前的时间点(或SCN),从而将数据找回. 下面我们先从简单的例子来看闪回查询的用法: 现有一张表有如下的数据 如果误执行了delete语句,删除其中一条记录,或插入一个废数据,修改了另外一…
一,flashback Oracle Flashback技术是一组数据库特性,它可以让你查看数据库对象的过去状态,或者将数据库对象返回到以前的状态,而无需使用基于时间点的介质恢复.根据数据库的变化,闪回特性可以更快的回退不想要的变化,而且相比介质恢复,对数据库可用性产生的影响更小. 利用闪回特性,你能够: 执行回到过去的数据查询 执行显示对数据库更改的详细历史的元数据的查询 将表或行恢复到之前的时间点 自动追踪和归档事务数据的更改 当数据库保持在线状态时,回退事务和与它相关的事务 flashba…
1.知识点:能够对比以下的录屏进行阅读 SQL> --1. 错误地删除了记录 SQL> --2. 错误地删除了表 SQL> --3. 查询历史记录 SQL> --4. 怎样撤销一个已经提交的事务 SQL> SQL> --闪回的类型 SQL> --1. 闪回表:将表回退到过去的一个时间上 SQL> --2. 闪回删除:Oracle回收站 SQL> --3. 闪回版本号查询:全部历史记录 SQL> --4. 闪回事务查询:通过select语句得到一个…
我们有个系统使用了Oracle flashback data archive闪回数据归档特性来作为基于时间点的恢复机制,在频繁插入.更新期间发现SYS_FBA_HIST_NNNN表中的XID被两个事务重用了,导致start_scn相同,于是在执行as of scn/timestamp查询的时候,相同rowid的记录会出来两条,无论是oracle 11.2.0.4还是oracle 18c都能重现,前者几乎100%,后者概率低很多(一开始LZ本地用18c跑了连续四五次都没有出现,以为解决了,后来测试…
利用闪回数据库(flashback)修复Failover后的DG环境 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① Failover后DG环境的恢复方法(重点) ② DG的基本维护操作 ③ GC客户端软件的安装 ④ 利用GC快速搭建一套DG环境 ⑤ Failover和Switchover的区别 ⑥ 其它维护操作 Tips: ① 本文在itpub(htt…
上一篇中讲诉了Oracle中一些闪回查询(Flashback Query),这是利用回滚段信息来恢复一个或一些表到以前的一个时间点(一个快照).要注意的是,Flashback Query仅仅是查询以前的一个快照点而已,并不改变当前表的状态. 下面就来看看其他的闪回. 1.Flashback Table  Oracle Flashback Table特性允许利用Flashback Table语句,确保闪回到表的前一个时间点.与Oracle 9i中的Flashback Query相似.要注意的是,F…