ORA-01144: File size (string blocks) exceeds maximum of string blocks
今天公司的Oracle服務(wù)器突然停止工作
在一個裸設(shè)備上擴展一個表空間的時候遭遇了這個錯誤,想知道具體原因是什么。
SQL> alter database datafile 5 resize 33G;-
alter database datafile 5 resize 33G
*
ERROR at line 1:
ORA-01144: File size (4325376 blocks) exceeds maximum of 4194303 blocks
AIX 64位的平臺
下面是Oracle err messages:
ORA-01144: File size (string blocks) exceeds maximum of string blocks
-----------------------------------------
在Oracle 10G及以上中,表空間有bigfile tablespace和smallfile tablespace的區(qū)別: bigfile tablespace是Oracle10g的新特性。Bigfile tablespaces包含1個最大4G個blocks 的datafile。因此,使用8KBdata blocks 的bigfile tablespace 最大可以達到32TB。Bigfile tablespaces 常用于非常大的DB。 如果很大的DB有成千的 read/write datafiles, 那么checkpoints之類的操作將非常費時。如果用一個很大的datafile,減少datafiles的數(shù)量,將會提高效率。創(chuàng)建時使用BIGFILE關(guān)鍵字如下:CREATE BIGFILE TABLESPACE BIG_DEMO
DATAFILE '/ORADATA/PROD/BIG_DEMO.DBF' SIZE 25G; Smallfile tablespace是原Oracle tablespace datafile 選項的新名字。 smallfile tablespace中,你可以包含多個datafiles。每個datafile 有最多4M個data blocks。因此,使用8KB data blocks的smallfile tablespace 中的datafiles 最大32GB。smallfile tablespace最多有1,023 個datafiles。SYSTEM和SYSAUX tablespaces總是smallfile tablespaces。
ORA-01144即表示你的單個數(shù)據(jù)文件超出了Oracle的限制:如:ORA-01144: File size (4194304 blocks) exceeds maximum of 4194303 blocks表示你的表空間是Smallfile tablespace,單個數(shù)據(jù)文件最大只可以有2^22=4194303個blocks,換成KBytes時即乘上你數(shù)據(jù)庫的block_size即可,解決方法是用多個數(shù)據(jù)文件,不是把單個數(shù)據(jù)文件設(shè)得很大.
-----------------------------------------
今天在solaris sparc10上安裝單節(jié)點Oracle10g,dbca報ora-01144,說數(shù)據(jù)文件大于限制,其實之前也奇怪為什么一個數(shù)據(jù)文件要150g。 后來發(fā)現(xiàn)原來是自己的理解錯誤,要求中并沒有說只能用一個數(shù)據(jù)文件,但是metalink查到相關(guān)信息如下,以備參考:
fix:
FIX 1:
Specify a smaller file size.
The maximum file size is
db_block_size * 4194303
For example, if db_block_size is 2kB then maximum file size is limited
to 2k*4194303, 8Gb-2k.
FIX 2:
Change db_block_size. This can only be done by recreating of
database.
db_block_size Maximum data file size
------------- ----------------------
2kb 8Gb-2kb
4kb 16Gb-4kb
8kb 32Gb-8kb
16kb 64Gb-16kb
32kb 128Gb-32kb
可見db_block_size對 maximum data file size還是起決定作用的
還有就是不能輕易的勾bigfile tablespace 這東西只允許表空間中存在一個數(shù)據(jù)文件~差點兒犯錯誤~ 呵呵~
本文出自:億恩科技【1tcdy.com】
服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|