欢迎来到天天文库
浏览记录
ID:50610115
大小:145.50 KB
页数:64页
时间:2020-03-12
《Oracle第12章闪回技术.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第12章闪回技术本章内容闪回技术概述闪回查询技术闪回查询闪回版本查询闪回事务查询闪回错误操作技术闪回表闪回删除闪回数据库本章要求了解闪回技术掌握闪回查询操作掌握闪回版本查询操作掌握闪回事务查询操作掌握闪回表操作掌握闪回删除操作掌握闪回数据库操作12.1闪回技术概述闪回基本概念闪回技术分类12.1.1基本概念Oracle9i实现了基于回滚段的闪回查询(FlashbackQuery)技术,即从回滚段中读取一定时间内对表进行操作的数据,恢复错误的DML操作。在Oracle10g中,除提高了闪回查询功能,实现了闪回版本
2、查询、闪回事务查询外,还实现了闪回表、闪回删除和闪回数据库的功能。闪回技术是数据库恢复技术历史上一次重大的进步,从根本上改变了数据恢复。采用闪回技术,可以针对行级和事务级发生过变化的数据进行恢复,减少了数据恢复的时间,而且操作简单,通过SQL语句就可以实现数据的恢复,大大提高了数据库恢复的效率。12.1.2闪回技术分类闪回查询(FlashbackQuery):查询过去某个时间点或某个SCN值时表中的数据信息;闪回版本查询(FlashbackVersionQuery):查询过去某个时间段或某个SCN段内表中数据的
3、变化情况;闪回事务查询(FlashbackTransactionQuery):查看某个事务或所有事务在过去一段时间对数据进行的修改;闪回表(FlashbackTable):将表恢复到过去的某个时间点或某个SCN值时的状态;闪回删除(FlashbackDrop):将已经删除的表及其关联对象恢复到删除前的状态;闪回数据库(FlashbackDatabase):将数据库恢复到过去某个时间点或某个SCN值时的状态。注意闪回查询、闪回版本查询、闪回事务查询以及闪回表主要是基于撤销表空间中的回滚信息实现的;闪回删除、闪回数
4、据库是基于Oracle10g中的回收站(RecycleBin)和闪回恢复区(FlashRecoveryArea)特性实现的。为了使用数据库的闪回技术,必须启用撤销表空间自动管理回滚信息。如果要使用闪回删除技术和闪回数据库技术,还需要启用回收站、闪回恢复区。12.2闪回查询技术概述闪回查询闪回版本查询闪回事务查询闪回查询的机制闪回查询是指利用数据库回滚段存放的信息查看指定表中过去某个时间点的数据信息,或过去某个时间段数据的变化情况,或某个事务对该表的操作信息等。为了使用闪回查询功能,需要启动数据库撤销表空间来管理
5、回滚信息。与撤销表空间相关的参数包括:UNDO_MANAGEMENT:指定回滚段的管理方式,如果设置为AUTO,则采用撤销表空间自动管理回滚信息;UNDO_TABLESPACE:指定用于回滚信息自动管理的撤销表空间名;UNDO_RETENTIOIN:指定回滚信息的最长保留时间。12.2.1闪回查询闪回查询可以返回过去某个时间点已经提交事务操作的结果。基本语法:SELECTcolumn_name[,…]FROMtable_name[ASOFSCN
6、TIMESTAMPexpression][WHEREconditi
7、on]基于ASOFTIMESTAMP的闪回查询基于ASOFSCN的闪回查询(1)基于ASOFTIMESTAMP的闪回查询SQL>ALTERSESSIONSETNLS_DATE_FORMAT='YYYY-MM-DDHH24:MI:SS';SQL>SETTIMEON09:12:50SQL>SELECTempno,salFROMscott.empWHEREempno=7844;EMPNOSAL--------------7844150009:13:00SQL>UPDATEscott.empSETsal=2000WHE
8、REempno=7844;09:13:07SQL>COMMIT;09:13:12SQL>UPDATEscott.empSETsal=2500WHEREempno=7844;09:14:28SQL>UPDATEscott.empSETsal=3000WHEREempno=7844;09:14:41SQL>COMMIT;09:14:50SQL>UPDATEscott.empSETsal=3500WHEREempno=7844;09:15:43SQL>COMMIT;查询7844号员工的当前工资值。09:15:48SQ
9、L>SELECTempno,salFROMscott.empWHEREempno=7844;EMPNOSAL-----------------78443500查询7844号员工前一个小时的工资值。09:16:00SQL>SELECTempno,salFROMscott.empASOFTIMESTAMPSYSDATE-1/24WHEREempno=7844;EMPNOSAL-------
此文档下载收益归作者所有