欢迎您的到来!本空间用来记录日常工作心得和一些小经验.内容可能部分摘自您的辛苦创作,再次对您表示感谢.希望本空间能给您或者其他朋友一些帮助. PS:寻求福州ORACLE DBA工作,期待您的惠顾(kugooo@live.cn)

【转】关于Restore Point

上一篇 / 下一篇  2008-07-12 22:18:36 / 个人分类:ORACLE--备份恢复

还原点(Restore point)是Oracle10gR2配合Flashback database推出的一个新特性。Restore point可以单独使用,也可以和Flashback database联合使用。

我们知道,Flashback database提供了一种将数据库整个的回滚到之前某个时间点的功能,相当于使用之前的某个备份做基于时间点的恢复,但是比基于时间点的恢复更有效率,因为无需执行备份数据文件的复制,只需要使用flashback log执行数据库回滚即可。也就是说,要使用flashback database功能,必须保证所需要的所有flashback log存在。flashback log存放在flashback recovery area中。由于falshback log中需要包含变更的数据块的映象,设置过长的flashback retention target,可能导致flashback recovery area空间不足。

Restore point有两种类型:Normal和Guaranteed。

Normal restore point相当于某个时间点或者SCN的一个别名。restore point的名字和对应的SCN会保存在控制文件中。创建了normal restore point后,如果需要执行flashback database/flashback table/point-in-time recovery等操作时,就可以制定目标时间点为该restore point,而不需要指定当时的SCN了。在很多关于恢复和闪回的试验中,作者都是在试验前查询系统当前的SCN,执行某些操作,然后恢复或者闪回到之前查询到的SCN。有了normal restore point后,就不再需要查询系统当前scn了,只需要创建一个有意思的normal restore point名,以后使用该名字即可。

Guaranteed restore point的功能和normal restore point的功能基本一致,也是作为SCN的一个别名。但是它还有一些和flashback database相关的特性。前面也提到,在执行flashback database到之前的某个时间点时,必须保证所需要的flashback log存在。

创建一个guaranteed restore point,可以保证能将数据库flashback到该点,即使没有系统启用flashback database日志!这是因为,在创建guaranteed restore point之后,对于任何block的第一次变更,都会将其前映象整个的记录下来。

如果系统启用了flashback database日志,那么guaranteed restore point可以保证能将数据库flashback到guaranteed restore point之后的任何时间点。

启用flashback database日志功能,需要使用alter database flashback on并且设置DB_FLASHBACK_RETENTION_TARGET参数(默认为1天)。默认情况下,会启用所有tablespace的flashback日志,也可以针对某个tablespace单独设置,如ALTER TABLESPACE tbs_3 FLASHBACK OFF。

有了Guaranteed restore point,甚至可以将数据库flashback到几天或者几个星期之前,只要flashback recovery area中空间足够。所以创建了guaranteed restore point后,需要对flashback recovery area空间保持密切的监控。

a.创建normal restore point

SQL>CREATERESTOREPOINTbefore_upgrade;ITPUB个人空间"cXY*BY7ZV7H@3B
Restorepointcreated.

b.创建guaranteed restore point

SQL>CREATERESTOREPOINTbefore_upgradeGUARANTEEFLASHBACKDATABASE;
g Itb!Vb q0
Restorepointcreated.

c.列举系统中已经创建的restore point

SQL>SELECTNAME,SCN,TIME,DATABASE_INCARNATION#,ITPUB个人空间 mrU)L%t6e l
        
GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE
2Va6ox;UP0        
FROMV$RESTORE_POINT;

d.列举系统中已经创建的guaranteed restore point

SQL>SELECTNAME,SCN,TIME,DATABASE_INCARNATION#,ITPUB个人空间6TWv'A {3R0Vv
        
GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE
Vt5v y9A YB0        
FROMV$RESTORE_POINTITPUB个人空间5E3h){;cZQ.q
      
WHEREGUARANTEE_FLASHBACK_DATABASE='YES';

对于normal retore point,storage_size为0。而guaranteed restore point的storage_size则为保证系统能够flashback到该点所需要的记录前映象的磁盘空间。

e.删除restore point

SQL>DROPRESTOREPOINTbefore_app_upgrade;
3Nw+~@[8F vv'l5z0
Restorepointdropped.

--END--

TAG: restore point

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-14  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 787
  • 日志数: 17
  • 文件数: 1
  • 建立时间: 2007-12-25
  • 更新时间: 2008-09-03

RSS订阅

Open Toolbar