表領域の使用状況を確認する

Pocket

出力結果の説明:

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(+)
;

 

投稿者:

oracledba

長年Oracleエンジニアを中心として、業務に携わってきました。 このサイトが少しでもお役に立てれば幸いです。

コメントを残す