Oracle の表領域を表示する SQL
2009-07-28-2: [Oracle]
SYSDBA でのログインが必要。
- SQL
SELECT
T.TABLESPACE_NAME "表領域",
ROUND(T.BYTES / (1024 * 1024), 0) "割当済(MB)",
ROUND((T.BYTES - SUM(F.BYTES)) / (1024 * 1024), 0) "使用量(MB)",
ROUND(SUM(F.BYTES) / (1024 * 1024), 0) "空容量(MB)",
ROUND((1 - SUM(F.BYTES) / T.BYTES) * 100, 2) "使用率(%)"
FROM
SYS.DBA_FREE_SPACE F,
(SELECT
TABLESPACE_NAME,
SUM(BYTES) BYTES
FROM
SYS.DBA_DATA_FILES
GROUP BY
TABLESPACE_NAME
) T
WHERE
T.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
GROUP BY
T.TABLESPACE_NAME,
T.BYTES
/
- 出力
表領域 割当済(MB) 使用量(MB) 空容量(MB) 使用率(%)
------------------------------ ---------- ---------- ---------- ----------
SYSAUX 560 544 16 97.11
USERS 2640 1151 1489 43.59
SYSTEM 400 361 39 90.17
UNDO 500 10 491 1.9
- ref.: Oracle Technology Network (OTN) Japan - 掲示板 : 表領域の使用率確認 ...
http://otn.oracle.co.jp/forum/message.jspa?messageID=8087948