在数据库中指定block大小

日期: 2009-07-09 作者:Brian Peasland翻译:孙瑞 来源:TechTarget中国 英文

问:我需要将Oracle 8i(block大小 8k)升级到9i版本(block大小 16k)   1、针对T1,T2, T3,T4,LARGE,MEDIUM和SMALL应该如何制定统一大小来最大程度地减小空间浪费?   2、我还想根据LMT的范围门槛来制定范围数(16K Block大小:1024/2=512)。   3、你如何确定理想状态?       BYTES      AVGROW  NUMROWsT01  2934046720  &nb……

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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

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

问:我需要将Oracle 8i(block大小 8k)升级到9i版本(block大小 16k)

  1、针对T1,T2, T3,T4,LARGE,MEDIUM和SMALL应该如何制定统一大小来最大程度地减小空间浪费?

  2、我还想根据LMT的范围门槛来制定范围数(16K Block大小:1024/2=512)。

  3、你如何确定理想状态?

      BYTES      AVGROW  NUMROWs

T01  2934046720    351   6927068     

T02  1357619200     40  25814396 

T03  1305518080    186   4678146     

T04   658841600     90   5380288     

                    LARGE UNIFORM SZ ?

T05   293068800     31   5946303
 
T06   293068800     36   4567866    

T06   182804480     23   4820931     

T08   121978880     24   3196038

T09    82739200     31   1554056     

T10    59023360     27   1474153     

T11    50913280     27   1477840     

                    MEDIUM UNIFORM SZ?

T12    17612800     53    264330    

T13    17530880     64    183504

T14    15892480     37    359238      

T15     6184960    135     36074      

T16     5283840     32    104411      

T17     3932160    196     15484      

T18     3481600     32     83276      

T19     1597440     29     45335      

T20     1597440    127      9813      

                    SMALL  UNIFORM SZ ?

T21      737280     28     19545      

T22      286720     25      8158      

T23      245760    278       677      

T24       81920     35      1071      

T25       81920     61       480      

T26       81920     33       969      

T27       40960     89       171      

  答:想要改变block大小,你就要使用Oracle导入导出工具来执行迁移了。所以先导出目前的Oracle 8i数据库到一个dump文件。然后重建数据库作为9i数据库(如果允许,直接升级到10g),这次的block大小设置为16k。

  在使用新的block大小重建9i数据库之后,precreate你的表空间来存储数据。创建表空间之后,设置本地管理表空间并又Oracle自动决定范围大小。下边是一个例子:

  CREATE TABLESPACE users

  DATAFILE '/u01/orcl/users01.dbf' SIZE 100M EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

    当使用AUTOALLOCATE指令,Oracle将决定最佳的范围大小。由于我一直在使用AUTOALLOCATE指令,所以从没想过数据库中最优范围大小的问题。很久以前我想过范围大小的问题,但是之后就不再考虑了。

作者

Brian Peasland
Brian Peasland

Techtarget旗下Searchoracle网站的资深专家,有16年IT行业经验、计算机科学硕士、专攻数据库方向,曾担任系统管理员等职。此外,他还获Oracle 7.3、8和8i的OCP数据库管理员证书,目前为SGT Inc.公司首席DBA。

翻译

孙瑞
孙瑞

相关推荐