日期:2014-05-16  浏览次数:20419 次

Oracle常用命令/语句:表空间与数据文件的查看与设置

1,查看表空间状况的方法

?? ? 主要使用到的等实图


select     FILE_NAME,
              TABLESPACE_NAME,
              AUTOEXTENSIBLE,
              STATUS,
              round(BYTES/(1024*1024*1024),2) || 'G' FILE_SIZE,
              round(MAXBYTES/(1024*1024*1024),2) || 'G' MAX_FILE_SIZE
from dba_data_files;

??

?

SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
         D.TOT_GROOTTE_MB "表空间大小(M)",
         D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
         TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2), '990.99') "使用比",
         F.TOTAL_BYTES "空闲空间(M)",
         F.MAX_BYTES "最大块(M)"   
FROM (SELECT TABLESPACE_NAME,
             ROUND(SUM(BYTES) /(1024 * 1024),2) TOTAL_BYTES,
             ROUND(MAX(BYTES) /(1024 * 1024),2) MAX_BYTES   
      FROM SYS.DBA_FREE_SPACE   
      GROUP BY TABLESPACE_NAME) F,
   (SELECT DD.TABLESPACE_NAME,
            ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB   
     FROM SYS.DBA_DATA_FILES DD   
     GROUP BY DD.TABLESPACE_NAME) D   
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME   
?


?

?

?

?? ? 修改表空间数据文件的大小的命令

?? ?

alter database datafile 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\TS_DEV.DBF'  
resize  2000M

?

???  

Alter tablespace TS_DEV  Add datafile 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\TS_DEV02.DBF'   size 500m  
 Autoextend on next 100m maxsize 2000M;
?

?

?

?