虽然可以依赖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. C# 收发和处理自定义的WINDOWS消息

    C# 发送.接收和处理自定义的WINDOWS消息 转载地址:http://blog.chinaunix.net/uid-24427209-id-2608350.html 为了程序启动后自动执行主函数, ...

  2. SVN提交,提示“remains in conflict”错误

    SVN commit时,提示"remains in conflict"错误: 1.error出现原因: 在本地项目删除了一个目录,又通过SVN的"Repo-browser ...

  3. ubuntu TensorFlow安装

    Tensorflow安装确实比caffe简单... cuda,cudnn安装就不说了 1 安裝pip(有就跳过) sudo apt-get install python-pip python-dev ...

  4. 爬取w3c课程—Urllib库使用

    爬虫原理 浏览器获取网页内容的步骤:浏览器提交请求.下载网页代码.解析成页面,爬虫要做的就是: 模拟浏览器发送请求:通过HTTP库向目标站点发起请求Request,请求可以包含额外的header等信息 ...

  5. 不一样的go语言-不同的语法之type

    前言   在go语言中,type用于类型定义(type definition)与类型别名(type alias).这两者的差别从名字上已经可以初见端倪.   类型定义即定义新类型,是一个全新的类型,但 ...

  6. 18,EasyNetQ-使用替代DI容器

    EasyNetQ由独立组件组成. 它在内部使用称为DefaultServiceProvider的小型内部DI(IoC)容器. 如果您查看用于创建核心IBus接口实例的静态RabbitHutch类的代码 ...

  7. Linux遇到的问题

    一.基本命令 yum list installed | grep docker  查看yum安装了哪些软件 netstat -lnp|grep 8000 查看端口 netstat -plutn | g ...

  8. SPOJTLE - Time Limit Exceeded(高维前缀和)

    题意 题目链接 题目的意思是给一个数组C,长度为n,每个数字的范围是2^m,然后要求构造一个数组a,满足 1.a[i] % C[i] !=0 ; 2.a[i] < 2^m ; 3.a[i] &a ...

  9. 潭州课堂25班:Ph201805201 爬虫基础 第三课 urllib (课堂笔记)

    Python网络请求urllib和urllib3详解   urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了url ...

  10. 潭州课堂25班:Ph201805201 第三课:序列类型的方法 (课堂笔记)

    列表的方法: li = [] 添加: li.append( 'a' ) 追加元素进入列表 li.insert( 1, 'b' ) 插入元素到指定索引位置 ----->>>  li.i ...