oracle闪回介绍.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
oracle闪回介绍

????? flashback(闪回)是Oracle10g里新加入的一个非常有用的一个feature。通过flashback的功能,我们可以避开传统的recover的方式去恢复一些我们进行的误操作。不过相当recovery来说。这两个还是有差别的。 1. recovery的恢复是基于数据文件的,先要restore备份好的数据文件,flashback是基于flashback log文件的,所以基点不一样,recovery是基于备份的时间上的,可以恢复到备份至完整归档的任何一个时刻,而flashback是基于flashback log的,而log的存储时效是受限于db_flashback_retention_target这个参数的(以分钟为单位,默认1440分钟,即24小时)。 2. recovery的恢复是应用redo记录的,所以会对期间我们不关心的数据也进行修补,而flashback可以只针对我们关心的数据进行修补。 3. recovery的恢复可以恢复数据文件物理损坏或者日志物理损坏,而flashback是基于flashback log的,只能处理由于用户的错误的逻辑操作,比如删除了表,删除了用户等。 由此可见,其实flashback和recovery的恢复还是有不少本质的差别的,因此我们要针对着相应的情况来进行相应的选择。 flashback具体来说有4种常用的操作,这几种操作虽然都冠以flashback,但是还是有着一些较大的差别, 1、flashback database(闪回数据库) 对应flashback database来说,一般用来处理误删除了user或者一些错误的数据操作。 要使用flash database的特性。我们一定要启动flashback功能, SQLalter database flashback on; 如果要关闭使用alter database flashback off; 同时要配置和检查参数db_flashback_retention_target,这个是控制flashback log的保留时间的参数,默认是1440分钟,即24小时。我们也只能恢复到这个时间之内。 使用如下 SQLshutdown immediate; SQLstartup open exclusive; SQLflashback database to timestamp to_date(’2009-05-13 00:35:50′, ‘yyyy-mm-dd hh24:mi:ss’); 或者基于scn号 SQLflashback database to scn 5342420; 先用read only模式打开数据库,确定恢复的正确性,如果不对,调整时间或者scn,直到确认数据恢复正确。以resetlogs的方式打开数据库,由于flashback log和redo log是分开的,所以即使resetlogs,闪回区的内容依然存在,我们一样能够能够闪回到以resetlog打开数据库点之钱的那个状态上,只有当flashback的开关关掉以后,闪回区的内容将自动删除。 2. flashback drop(闪回删除) 用来恢复被误drop掉的表的恢复,这里有一个我以前错误理解的一个地方,其实这里的flash drop已经脱离了flashback log,在10g的版本里,Oracle在表删除以后,并没有真的把这个表删除,而是对删除表做了重命名,并且用recycle bin来对其进行管理,我们可以通过user_recyclebin和dba_recyclebin来进行查询. SQLselect * from user_recyclebin或者是select * from dba_recyclebin; 通过flashback table testtable to before drop. 有时可能一个表被反复的建立和drop,这样在recycle一个origianl name的有多个记录相对,默认将是恢复最后一个,如果要指定恢复一个可以用他们的可以通过指定name的方式 3. flashback table(闪回表) 有时,不小心,对表进行了错误的update,那么我们就可以通过这个feature来进行恢复,比如,我们update … set … where ..或者delete 了表里不应该的数据,我们可以使用flashback table testtable to timestamp to_date((’2009-05-13 00:35:50′, ‘yyyy-mm-dd hh24:mi:ss’)),这里要注意和前两个不同的,这里是利用undo表做恢复的基准,所以有关undo的参数undo_management和undo_retent

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档