oracle闪回特性2

oracle闪回特性2

ID:20935578

大小:44.00 KB

页数:19页

时间:2018-10-18

oracle闪回特性2_第1页
oracle闪回特性2_第2页
oracle闪回特性2_第3页
oracle闪回特性2_第4页
oracle闪回特性2_第5页
资源描述:

《oracle闪回特性2》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、oracle的闪回特性21、用户有对dbms_flashback包有执行权限!2、进行闪回查询必须设置自动回滚段管理,在init.ora设置参数UNDO_MANAGEMENT=AUTO,参数UNDO_RETENTION=n,决定了能往前闪回的最大时间,值越大就需要越多Undo空间。Oracle9i中闪回查询操作实例察看Oracle中Delete和Commit操作的流程分析  例:Oracle9i的FlashbackQuery操作。(1)创建闪回查询用户SQL>createusertestidentifiedbytest;

2、SQL>grantconnect,resourcetotest;SQL>grantexecuteondbms_flashbacktotest;SQL>connecttest/test;(2)创建测试表,插入测试记录SQL>createtabletest(idnumber(3));SQL>insertintotestvalues(1);SQL>insertintotestvalues(2);SQL>commit;注意:在执行步骤3或者步骤4之前,等待5分钟。(3)删除记录SQL>deletefromtestwhereid=

3、1;SQL>commit; 通过以上的操作,我们插入了两条记录,并删除了其中一条记录。在以下的操作中,我们将通过flashbackquery找到删除的记录(4)闪回查询(分别通过timestamp和scn查询)SQL>select*fromtestasoftimestampsysdate-5/1440;ID----12或SQL>select*fromtestasofscn8173800;ID----12 可以看出,虽然删除记录并提交,但是通过闪回操作,仍能查询到删除前的两条记录。需要注意Oracle每5分钟记录一次SCN

4、到SMON_SCN_TIME,并将SCN和对应时间的映射进行纪录。如果原来插入的记录到做闪回操作的时间在5分钟之内,用基于时间的闪回查询可能得不到记录,因为基于时间点的查询实际上是转化为最近的一次SCN,然后从这个SCN开始进行恢复。因此,如果需要精确的查询可以采用基于SCN的闪回查询,可精确闪回到需要恢复的时间。可以通过DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER语句获取SCN。5、恢复被删除的数据实SQL>insertintotestselect*fromtestasofscn817

5、3800whereid=1;Oracle10g中闪回查询操作实例与Oracle9i相比Oracle10g的Flashback有了非常大的改进,在Orcle10g之前,SMON_SCN_TIME由SMON来获取和记录信息的,每5分钟记录一次,从Oracle10g开始,LGWR首先会在SGA中记录SCN与时间的映射关系(由于LGWR至少每3秒就会被激活一次,所以现在SMON_SCN_TIME能够支持大于3秒的闪回),SMON则定期检查SGA是否内存中的映射大于磁盘上的,如果有就刷新纪录到磁盘,而且从普通的FlashbackQ

6、uery发展到了多种形式,主要表现在如下几方面新特性:1、FlashbackDatabase OracleFlashbackDatabase特性允许通过SQL语句FlashbackDatabase语句,让数据库前滚到当前的前一个时间点或者SCN,而不需要做时间点的恢复。闪回数据库可以迅速将数据库回到误操作或人为错误的前一个时间点,如Word中的"撤消"操作,可以不利用备份就快速的实现基于时间点的恢复。Oracle通过创建新的FlashbackLogs(闪回日志),记录数据库的闪回操作。如果希望能闪回数据库,需要设置如下参

7、数:DB_RECOVER_FILE_DEST--日志的存放位置,DB_RECOVER_FILE_DEST_SIZ--E恢复区的大小在创建数据库的时候,Oracle将自动创建恢复区,但默认是关闭的,需要执行alterdatabaseflashbackon命令。执行FlashbackDatabase命令格式:SQL>flashbackdatabasetotimeto_timestamp(xxx);SQL>flashbackdatabasetoscnxxx数据库的闪回状态可以从V$database视图中查询得到:SQL>sel

8、ectdbid,name,flashback_on,current_scnfromv$database;DBIDNAMEFLASHBACK_ONCURRENT_SCN------------------------------------------------1692001961ACFNO8175168一个数据库级

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。