ORACLE物理文件大小的限制

类别:编程语言 点击:0 评论:0 推荐:
   Oracle数据库的物理文件可以设置成自动增长的类型, 这样数据库在需要更多空间时, 物理文件会按设定
的增长量自动增长到指定的最大值. 这样会有一些好处: 保证不会因为分配数据区域(extent)失败而终止应用.
但如果没有设定这个最大值, 它将会是一个非常大的数字. 数据块大小不同, 其最大值也不一样. 因为Oracle
的物理文件最大只允许4194303个数据块(datablock). 

    下面列表说明不同数据块数据库所能支持的最大物理文件大小:

    数据块的大小 物理文件的最大值 M
===============================================
2048 8191 M
4096 16383 M
8192 32767 M
       16384 65535 M
      
    不幸的是, 不同操作系统不同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 50M
    maxsize 1500M;
   
    如果有良好的数据库存储规划, 物理文件最好还是设置成非自动增长的类型.

本文地址:http://com.8s8s.com/it/it24125.htm