分类分类
2015-06-28 00:00作者:网管联盟
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.
相关文章