Language/Oracle

Oracle Tablespace 사용현황 조회

OIZTLOMO 2009. 6. 30. 12:00

SELECT F.TNAME                                                                                              AS "TABLESPACE_NAME"
               ,ROUND(SUM(D.BYTES)/1024, 0)                                                       AS "TOTAL_SPACE(KB)"
               ,ROUND((SUM(D.BYTES) - SUM(F.BYTES))/1024, 0)                            AS "USED_SPACE(KB)"
               ,ROUND((SUM(D.BYTES) - SUM(F.BYTES))/SUM(D.BYTES)*100, 0)      AS "USED_RATIO(%)"
               ,ROUND(SUM(F.BYTES)/1024, 0)                                                        AS "FREE_SPACE(KB)"
  FROM (SELECT SUM(BYTES)               AS BYTES
                         ,TABLESPACE_NAME  AS TNAME 
                FROM DBA_FREE_SPACE 
              GROUP BY TABLESPACE_NAME
              ) F,
              (SELECT SUM(BYTES)               AS BYTES
                           ,TABLESPACE_NAME AS TNAME
                  FROM DBA_DATA_FILES
                GROUP BY TABLESPACE_NAME
               ) D
 WHERE F.TNAME = D.TNAME
 GROUP BY F.TNAME;