首页 > 数据库 > Oracle > Oracle 11g R2的四个新增小特性
Oracle 11g R2当中新增的几个不是很大,但是也相当不错的特性:
Oracle 11g R2增加了一个强大的新工具,它可以检出应用程序数据库对象的任一版本,不是所有数据库对象都支持版本化管理,但私有的同义词,视图和几乎所有的PL/SQL对象,包括存储过程、函数、类型、类型主体、包、包主体和触发器,版本化管理的真正好处是简化了部署一个修改版本的应用程序代码到生产数据库,如果部署时遇到一系列的错误,可以很容易地将所有影响的对象回滚到上一个版本。
在前一篇文章中,我深入研究了Oracle 11g R1的新特性“闪回数据归档(Flashback Data Archive,FBDA)”,它也被称为“全部召回(Total Recall)”,它只捕获变化的数据,将这些数据放在一套特殊的对象中,它们构成了FBDA,当用户通过闪回版本查询(Flashback Versions query)查询表的历史记录时,Oracle将会直接从数据库的UNDO表空间返回最近变化的数据,从FBDA返回更旧的数据。
虽然这个特性很好,但在早期版本中也有很多限制,包括增加、修改、重命名、删除表的列、truncate表、修改表的约束、以及修改分区表的分区规范,在Oracle 11g R2中,这些限制全部没有了,对于更复杂的DDL操作,如使用DBMS_REDEFINITION包重定义已经存储到FBDA的基础表,Oracle 11g R2提供了新的DBMS_FLASHBACK_ARCHIVE包,存储过程DISASSOCIATE_FBA将会把基础表从FBDA中分离出来,一旦请求的改变完成,存储过程REASSOCIATE_FBA会被用来重新关联修改的表和基础表。
在之前的版本中,使用CREATE TABLE语句创建表时,会同时自动创建表的初始段,从Oracle 11gR2开始,这个默认的行为有所变化,创建表时不会创建初始段,直到有数据插入到这个表。此外,任何依赖于该表的索引或LOB段也不会创建,直到有数据插入才会创建,表的SEGMENT CREATION DEFERRED存储属性指定了这个默认行为,但可以使用SEGMENT CREATION IMMEDIATE属性覆盖它。
在重新载入大表时,比如一个有上百万行的数据仓库事实表,要提高这种表的加载速度,最简单的办法是将该表上的所有索引置为不可用,在数据加载完毕后,在重建这些索引,Oracle 11g R2认可了这一做法,并采取了实质性的措施,当索引被标记为不可用时,它会自动删除所有索引段。
===沈阳希望电脑科技有限公司===
微软金牌认证合作伙伴
瑞星东北区总代理
Oracle授权金牌合作伙伴
红帽东北区总代理
Autodesk CAD授权经销商
趋势Symantec 授权合作伙伴
Adobe全线产品认证经销商
网页防篡改、终端行为管理与流量监控、数据备份与容灾、负载均衡、网络运维管理
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/692374/viewspace-1114928/ ,如需转载,请注明出处,否则将追究法律责任。