ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle 数据文件大小的限制

Oracle 数据文件大小的限制

原创 Linux操作系统 作者:wwd_wang 时间:2009-10-12 11:02:39 0 删除 编辑
http://cache.baidu.com/c?m=9d78d513d99e01fc09b3c3690c66c0161e43f3642ba7da020bd08449e3732a32501295ac57550772a5d27d1716de3e4b9bf62102461454c08cc9f85dadbd855c2e9f5136676f8555559347a091006383379129f4b243bcadf045c3fd8985984353bd0258259da0dc065f479738b00961bdfbcc554e1947e5f0316eab537578cb2216b011fdea363f0783a6db581bc12fda7611e0f573ef60&p=882a964eba904eaa04b8c02c470a&user=baidu
2009-09-09 17:43
oracle数据文件大小限制的公式:
oracle maximum file size = db_block_size * 4194303 
(2^22 = 4194304)

也就是说最大的数据文件大小是由 db_block_size 来决定的,8KB的数据块的数据文件最大为 8K * 4194304 = 32G,其他的以此类推

数据块 数据文件
2KB 8GB
4KB 16GB
8KB 32GB
16KB 64GB
32KB 128GB

限制的原因在于:由于Oracle的Rowid中使用22位来代表Block号,这22位最多只能代表2^22-1个数据块。

【注】以上规则适用于smallfile tablespace 下的数据文件,bigfile tablespace 下的数据文件不受此限制

SQL> create tablespace lob_rms datafile '+DISKGRP1/rms/datafile/lob_rms_01' size 100G;
create tablespace lob_rms datafile '+DISKGRP1/rms/datafile/lob_rms_01' size 100G
*
ERROR at line 1:
ORA-01144: File size (13107200 blocks) exceeds maximum of 4194303 blocks


SQL> !oerr ora 1144
01144, 00000, "File size (%s blocks) exceeds maximum of %s blocks"
// *Cause:  Specified file size is larger than maximum allowable size value.
// *Action: Specify a smaller size.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12137615/viewspace-616296/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-05-08

  • 博文量
    236
  • 访问量
    193296