下面列表說明不同數據塊數據庫所能支持的最大物理文件大小:
數據塊的大小 物理文件的最大值 MB
========== ====================
2048 8191
4096 16383
8192 32767
16384 65535
不幸的是, 不同操作系統不同Oracle版本對其物理文件的最大值限制是不一樣的。如果物理文件超過了某個限制大小, Oracle數據庫將會出現內核錯誤並崩潰。
下面列出了幾種常見操作系統的最大物理文件限制, 有的還需要在OS端設置大的文件系統和特定的環境變量等。
Windows NT Maximum 4GB files on FAT
Theoretical 16TB on NTFS
Sun Solaris (32 bit Oracle releases)
=======================================
OS Limits
~~~~~~~~~
Release Max file-system size Max OS File size
< Solaris 2.6 1TB (UFS) 2GB
>= Solaris 2.6 1TB (40 bits) 1TB
Oracle Limits
~~~~~~~~~
SOLARIS 2.6 / 2.7 / 2.8
File Exp/ Loader
Oracle System Raw Imp** see ** UTL_FILE
==========================================
8.1.6.0 >4GB >=2GB >=2GB >=2GB >=2GB
8.1.5.0 32Bit >4GB >=2GB <2GB <2GB <2GB
8.1.5.0 64Bit >4GB >=2GB <2GB
8.0.6.0 >4GB >=2GB <2GB >2GB
8.0.5.2 >4GB >=2GB <2GB <2GB <2GB
8.0.5.1 <4GB >=2GB <2GB <2GB <2GB
8.0.5.0 <2GB >=2GB <2GB <2GB <2GB
>=8.0.4.2 <4GB >=2GB <2GB <2GB <2GB
< 8.0.4.2 <2GB >=2GB <2GB <2GB <2GB
8.0.3.x <2GB >=2GB <2GB <2GB <2GB
7.3.4.x <2GB >=2GB <2GB <2GB <2GB
7.3.3.x <2GB >=2GB <2GB <2GB <2GB
HP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HPUX Unix Limits
~~~~~~~~~~~~~~~~~
Max file system size:
<= HP-UX 10.10 4GB
>= HP-UX 10.20 128GB
>= HP-UX 11.00 1TB
Max OS file size:
<= HP-UX 10.10 2GB
>= HP-UX 10.20 128GB
>= HP-UX 11.00 1TB
Oracle on HPUX Limits
~~~~~~~~~~~~~~~~~~~~~~
Max Datafile Size
File Raw Async Export/ SQL*Loader
Release System Device I/O Import** (see **)
=============================================
8.1.7.x 64GB 64GB raw only >2GB >2GB
8.1.6.x 64GB 64GB raw only >2GB >2GB
8.0.6.x 64GB 64GB raw only See*1 See*2
8.0.5.x 64GB 64GB raw only See*1 <2GB
8.0.4.x 64GB 64GB raw only SIL HPUX10.20 > 2GB
HPUX-11 <2GB
8.0.3.x <2GB <2GB raw only 2GB 2GB
7.3.4.x 64GB 64GB raw only SIL 2GB
>=7.3.3.4.1 64GB 64GB raw only SIL 2GB
7.3.2.3 <2GB <2GB raw only 2GB 2GB
7.1.6 <2GB <2GB raw only 2GB 2GB
下面的SQL語句可以查看數據庫物理文件是否是自動增長的及相關參數。
select tablespace_name,file_name,
round(bytes/(1024*1024),0) total_space,
autoextentsible,increment_by,maxbytes from
dba_data_files order by tablespace_name;
如果你管理的數據庫物理文件是自動增長的並有可能超過操作系統或Oracle版本文件最大限制時, 請盡快改變它的屬性, 把它設定成非自動增長的或者限定它最大的值。
假如物理文件的物理位置是 D:\ORACLE\ORADATA\Oracle8\APP01.DBF 用下面的SQL語句可以實現這一操作:
alter database datafile '
D:\ORACLE\ORADATA\Oracle8\APP01.DBF' autoextend off;
alter database datafile '
D:\ORACLE\ORADATA\Oracle8\APP01.DBF' autoextend on next 50MB
maxsize 1500MB;
如果有良好的數據庫存儲規劃, 物理文件最好還是設置成非自動增長的類型。