Oracle 11g flash_back介绍

来源:互联网 发布:阿里云存储免费吗 编辑:程序博客网 时间:2024/06/13 01:17

11g的flashbackup 分好几种,分别用途不一样。
A. flashback database 闪回数据库,简单理解就是把数据库闪回到某个以前的时间点,能恢复到的最早的SCN, 取决与Flashback Log中记录的最早SCN
B. flashback drop 回收数据库表,用于表误drop后恢复。类似Windows的回收站。
C. flashback query 闪回表记录,用于数据表记录的恢复
D. falshabck Table 闪回数据库表,

分类:

数据库级别:Flashback Database
表级别:Flashback Drop和Flashback Table,Flashback Data Archive
记录级别:Flashback Version Query和Flashback Transaction Query
关于Flashback Query:
1.Flash Query通过undo数据表空间数据,利用一致性的方法来查找用户需要的数据
2.作用范围:查找指定时间点被(delete,update)的数据,只是做查找操作,如果设计恢复那么就要使用flashback table了

相关参数:

 1.查询出来的数据存活时间受 undo_retention(默认为900秒)影响[目标值,该变量(秒)可以影响undo表空间产生的data存活时间,时间一到,即死亡(消失)]  2.闪回时间受undo表空间大小影响[关于undo表空间的操作,另一片文章会有讲解]  3.查询的仅仅是快照,并不能修改当前状态

基本语法[两种方式,使用时间片或scn号]使用时间片的情况比较多

     1.select *  from 你要查询表的名字 as of timestamp[查询某一时间该表的数据]     2.select * from 你要查询表的名字 as of scn 具体scn号[关于scn号,另一篇文章会讲解]

原理:

简单的说就是将以前被修改,删除了的数据,通过开启Flashback 模式,回到我们需要回到的时间来查看数据,
在undo_retention该变量设置的时间过后,该镜像数据会自动被清除.相当于查看的是一个镜像数据.
一种方式是利用scn号来查看镜像数据,另一种是通过查找时间片来查询镜像数据。

关于Flashback Table:

  1.闪回表格,可将表格的数据闪回到某个时间点      2.需要开启行移动模式 [enable row movement]     3.原理:Flashback Table也是利用Undo数据来恢复对象到指定时间点  4.使用范围:恢复当前表及其相关对象到某个时间点   5.注意点:      1).闪回时间受参数undo_retention影响       2).闪回时间受undo表空间大小影响       3).和flashback query有差别,恢复表到以前的时间点 [真实闪回,而不是镜像]

语法:

1).flashback table table_name to timestamp ....  [根据时间点闪回]2).flash table table_name to scn ...  [根据scn号回退,实际操作基本上不会用到]3).flashback table table_name to timestamp ... enable triggers. [创建表,开启行移动模式,用的不多]4).flashback table testFlashTable to TIMESTAMP systimestamp - interval '5' minute;  [回退到几分钟之前,用的多]
原创粉丝点击