虽然可以依赖undo数据来查询row的旧版本数据,甚至可以执行逻辑恢复。但是你不能期待在undo中找到非常旧的数据。undo数据主要是用来提供读一致性。

在11G中,提供了Flashback Data Archive新特性,Flashback Data Archive可以自动存储表随着时间的推移发生的改变,时间的长度由用户决定。超过archive的保留期限,Flashback Data Archive会自动清除老的数据,但是不能修改Flashback Data Archive中的数据。Flashback Data Archive不用在数据库级别开启,可以只对用户指定的表。

flashback data archive数据库中的一个逻辑容器,包含了某个表或多个表的历史数据,以及其retention和purge策略。

flashback data archive将数据放在用户指定的表空间中;

flashback data archive可以含有多个表; 通过将表放入不同的flashback data archive,不同的表可以设置不同的retention策略; 可以创建多个flashback data archivei,也可以为数据库设置默认的flashback data archive;

在数据过期一天后,数据库会自动purge flashback data archive的过期数据;

表开启flashback data archive功能后,数据库会创建一个内部历史表来存放历史数据。历史表相比源表,会增加一些时间戳列来标识事务信息。

对表开启flashback data archive功能后,oracle后台进程fbda(Flashback Data Archiver)负责将表的改变数据写入flashback data archive

insert 操作不会为历史表增加任何行,因为没有前镜像。update、delete操作,fdba进程会记录修改前的行到历史表。默认是每5分钟唤醒一次(oracle会自动调节这个频率),fdba会优先从buffer cache中的undo读取数据,如果已经被清空,就会从undo segments中读取信息。

Flashback Data Archive和Flashback Database的区别:

-前者不改变当前数据,只是提供了访问过去某个时间的数据;后者会将数据库变成过去某个时间的数据

-前者需要开启table track功能;后者需要开启flashback database功能

-前者是online特性;后者是offline特性

-前者可以在table级别;后者是数据库级别

监控flashback data archive:

-dba_flashback_archive_tables

-dba_flashback_archive

-dba_flashback_archive_ts

Flashback Data Archive存在的限制:

-可以在源表上增加列,但是不能删除列(除非先取消flashback archive,这样会丢失历史表中的数据)

-不能使用alter table命令来rename或修改源表的列

-不能使用alter table命令执行分区、子分区操作,或将long列转换成lob列

-不能drop table或truncate tablespace

11G新特性 -- flashback data archive(1)的更多相关文章

  1. 11G新特性 -- flashback data archive(2)

    创建Flashback Data Archive用户需要授予dba或flashback archive administer系统特权.flashback archive administer系统特权包 ...

  2. Flashback Data Archive ( Oracle Total Recall ) introduced in 11g

    Flashback Data Archive feature is part of Oracle Total Recall technology. Flashback Data Archive fea ...

  3. flashback data archive (转)

    闪回数据归档(Flashback Data Archive) 在Oracle 11g当中,对闪回技术再次进行了扩展,提供了一个全新的flashback方式,称之为闪回数据归档,本节我们将对闪回数据归档 ...

  4. 闪回之 Flashback Data Archive

    背景:Oracle 11g 中 Flashback Data Archive 特性.将变化数据另外存储到创建的闪回归档区(Flashback Archive)中,以和 undo 区别开来,这样就可以为 ...

  5. [每日一题] 11gOCP 1z0-053 :2013-09-29 Flashback Data Archive ...................................6

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/12205299 正确答案:A 具体请参考:http://blog.csdn.net/guoy ...

  6. oracle闪回、闪回数据归档Flashback Data Archive (Oracle Total Recall)的真正强大之处、11gR2增强以及合理使用

    oracle的闪回很早就出来了,准确的说一直以来应该都较少被真正用户广为使用,除了dba和极少部分开发人员偶尔用于逻辑出错.误删恢复之外,较少被用于产生更有价值的用途. 各种闪回表flashback ...

  7. oracle flashback data archive闪回数据归档天坑之XID重用导致闪回查询数据重复

    我们有个系统使用了Oracle flashback data archive闪回数据归档特性来作为基于时间点的恢复机制,在频繁插入.更新期间发现SYS_FBA_HIST_NNNN表中的XID被两个事务 ...

  8. 使用Oracle 11g新特性 Active Database Duplication 搭建Dataguard环境

    Duplication Database 介绍 Duplicate database可以按照用途分为2种: duplicate database(复制出一个数据库) duplicate standby ...

  9. 【MySQL】MariaDB10.2新特性--Flashback

    MariaDB10.2新特性--Flashback Flashback可以回滚到旧的数据,用于解决用户误删除数据的问题. 实战例子 MariaDB [zsd]> select * from te ...

随机推荐

  1. 【BZOJ1135】[POI2009]Lyz

    题解: hall定理..第一次听说 思考了半小时无果 二分图匹配时间显然太大 但是有这个hall定理 二分图有完美匹配的充要条件是 对于左边任意一个集合(大小为|s|),其连边点构成的集合(大小为|s ...

  2. BZOJ1588 [HNOI2002]营业额统计 set

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1588 题意概括 给出数列,求  ∑F[i],其中F[1] = a[1] , F[i] = min( ...

  3. POI搜索简介

    用户输入——用户输出-----------------------------------------------------------而POI搜索引擎,需要做的就是拿到输入条件,给出用户比较满意的 ...

  4. 树莓派VNC搭建相关教程+Ubuntu16.04连接vncserver灰屏问题!

    树莓派VNC搭建相关教程: 为了节省money,于是我决定用VNC界面来代替显示器,为后面做C++ Qt以及Python Qt开发打下基础,我别无选择!下面开始进入正题: 1-- 下载VNC-View ...

  5. vi命令修改文件及保存的使用方法

    简单点:vi文件名,按"I"进入insert模式,可以正常文本编辑,编辑好之后按“esc”退出到“命令模式”,再按“shift+:”进入“底行模式”, 按“:wq”保存退出! 还一 ...

  6. VSCode tasks.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等

    When authoring tasks configurations, it is often useful to have a set of predefined common variables ...

  7. [漏洞案例]thinkcmf 2.x从sql注入到getshell实战

    0X00 前言 这个案例是某项目的漏洞,涉及敏感的地方将会打码. 很久没更新博客了,放一篇上来除除草,新的一年会有所转变,以后会有更多领域的研究. 下面是正文 0X01 正文 某厂商某个网站用的是th ...

  8. 说出ArrayList,Vector, LinkedList的存储性能和特性

     ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插 ...

  9. JS-排序详解-选择排序

    说明 时间复杂度指的是一个算法执行所耗费的时间 空间复杂度指运行完一个程序所需内存的大小 稳定指,如果a=b,a在b的前面,排序后a仍然在b的前面 不稳定指,如果a=b,a在b的前面,排序后可能会交换 ...

  10. 如何实现跨域获取iframe子页面动态的url

    有的时候iframe的子页面会动态的切换页面,我们在父页面通过iframe1.contentWindow.window.location只能获取同源的子页面的信息.获取跨域的子页面信息会报错. 这时可 ...