Oracle 11g新特性之SecureFiles(二)

日期: 2008-07-31 作者:allan 来源:TechTarget中国 英文

  下面是一个创建Securefiles的例子:







create TABLE func_spec( 
id number, doc CLOB ENCRYPT USING ’AES128’ ) 
LOB(doc) STORE AS SECUREFILE 
( DEDUPLICATE LOB CACHE NOLOGGING ); 


  可以使用alter TABLE table_name MODIFY来修改当前的Securefiles的各种属性,例如: 







alter TABLE t1 MODIFY LOB(a) ( DEDUPLICATE LOB ); 


  使用此命令能修改的Securefiles属性如下:


  DEDUPLICATE/KEEP_DUPLICATES: DEDUPLICATE选项允许指定在一个LOB列中有两行或者更多行的时候,所有行都共享同样的数据块。相反的就是KEEP_DUPLICATES选项。Oracle11g数据库使用一个安全的哈希索引来检测重复性并且联合LOBs的内容到一个单一的拷贝里面,减少存储空间并且简化存储管理。


  VALIDATE:对SecureFiles执行一个字节到字节的比较,确定SecureFiles都是同样的安全哈希值。


  COMPRESS/NOCOMPRESS:决定是否启用LOB压缩。


  ENCRYPT/DECRYPT:决定是否启用LOB加密。如果一旦设置好了加密,就只能用alter TABLE REKEY命令来更新加密算法或者是加密值。


  RETENTION:只能影响使用alter TABLE语句之后所创建的空间。


  对于Securefiles的访问,Oracle11g数据库是通过使用DBMS包来实现的。主要是通过DBMS_LOB包和DBMS_SPACE包来访问。


  DBMS_LOB包:LOBs继承LOB列的设定的属性,当然也可以通过LOB locator API配置成每个LOB级别上。但是LONG API不能用于配置这些LOB设定,必须使用DBMS_LOB包来设定这些属性:


  DBMS_LOB.GETOPTIONS:可以用来获取设定,每个选项类型的预定义的一个常量对应于一个整数将会返回。


  DBMS_LOB.SETOPTIONS:用于设定特性并且允许在每一个LOB基础上设定特性,会覆盖所有默认的LOB设定。


  DBMS_LOB.GET_DEDUPLICATE_REGIONS:这个存储过程用于输出在一个LOB中不重复区域的记录收集。LOB级别上只包含一个不重复区域。


  DBMS_SPACE.SPACE_USAGE:这个存储过程用于返回LOB空间使用的负载信息。返回在LOB段中所有LOB使用的磁盘空间的blocks的数量。这个存储过程目前只能用于ASSM创建的表空间,不支持属于BasicFiles那部分LOB使用的空间。


  对于从BasicFiles移植SecureFiles,有两种推荐的方法来移植。这两种方法分别是交换分区和在线重定义。


  交换分区:


  需要和表中最大的分区相等的额外空间


  在交换的时候可以维护索引


  能够在几个小的维护窗口延展工作负载


  执行交换分区的时候需要将表或者分区离线


  在线重定义:


  不要求表或者分区离线


  可以被并行的执行


  要求额外的等于整个表或者所有LOB段大小的可用空间


  要求必须重建所有的全局索引


  如果你想升级你的BasicFiles到SecureFiles,你可以使用传统的方法来升级数据,例如CTAS/ITAS、export/import、column-to-column拷贝等等。大部分这些解决方案都要求使用两倍的磁盘空间来移植。然而,使用分区解决方案来移植可以按照每个分区来移植,从而有助于减少磁盘空间的需求。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

allan
allan

相关推荐

  • Oracle依旧领跑关系型数据库市场

    Gartner研究机构在上个月发布了关系型数据库市场的相关数据,其中Oracle在过去的两年中依旧以较大的优势领跑该市场。

  • 30个Oracle语句优化规则详解(二)

    Oracle采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾……

  • Oracle11g: PL/SQL基础

    PL/SQL是由构造程序、统计数据、模块性以及异常管理等建模观念发展而来的。它扩展了ADA程序语言。ADA扩展了Pascal程序语言,包括配置、比较运算符以及单引字符串分隔符。

  • Oracle 11g中SYS连接阻止关闭数据库(三)

    以前就发现11g的Oracle有这个问题,一直没有太在意,直到今天关闭数据库的时候发现很长时间Oracle都无法正常关闭,从后台查询,发现数据库出现错误提示……