【概要】 |
DBA_DATA_FILESおよびDBA_FREE_SPACEにより、表領域使用状況を確認する。 |
【SQL文】 |
/* |
|| ■表領域使用状況を確認する |
|| |
|| ■出力結果の説明: |
|| TABLESPACE_NAME : 表領域名 |
|| TOTAL_SIZE : 表領域総容量 |
|| (単位:Mbyte,少数点第三位を四捨五入し出力) |
|| USED : 表領域使用容量 |
|| (単位:MByte,少数点第三位を四捨五入し出力) |
|| FREE : 表領域空き容量 |
|| (単位:MByte,少数点第三位を四捨五入し出力) |
|| USE RATE : 表領域使用率(百分率で出力) |
|| |
|| 表領域名やサイズ等は適時入れ替えてください。 |
*/ |
set echo off |
set line 120 |
set pages 1000 |
|
SELECT |
TABLESPACE_NAME, |
ROUND(NVL(TOTAL_BYTES / 1024 / 1024,0),1) AS “TOTAL_SIZE(MBYTE)”, |
ROUND(NVL((TOTAL_BYTES – TOTAL_FREE) / 1024 / 1024,0),1) AS “USED(MBYTE)”, |
ROUND(NVL(TOTAL_FREE/1024/1024,0),1) AS “FREE(MBYTE)”, |
ROUND(NVL((TOTAL_BYTES – TOTAL_FREE) / TOTAL_BYTES * 100,100),2) AS “USE RATE(%)” |
FROM |
( |
SELECT |
TABLESPACE_NAME, |
SUM(BYTES) AS “TOTAL_BYTES” |
FROM |
DBA_DATA_FILES |
GROUP BY |
TABLESPACE_NAME |
), |
( |
SELECT |
TABLESPACE_NAME AS “FS_TS_NAME”, |
SUM(BYTES) AS “TOTAL_FREE” |
FROM |
DBA_FREE_SPACE |
GROUP BY |
TABLESPACE_NAME |
) |
WHERE |
TABLESPACE_NAME = FS_TS_NAME(+) |
; |
|
以上です 💦 |