SELECT nvl(t.name, 'CDB$ROOT') as DB_NAME,
D.TABLESPACE_NAME,
TOTAL_SPACE,
(SPACE - NVL(FREE_SPACE, 0)),
ROUND((SPACE - NVL(FREE_SPACE, 0)) / TOTAL_SPACE * 100, 2) ratio,
FREE_SPACE
FROM (SELECT TABLESPACE_NAME,
con_id,
ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,
ROUND(SUM(decode(maxbytes, 0, bytes, maxbytes)) /
(1024 * 1024),
2) TOTAL_SPACE,
SUM(BLOCKS) BLOCKS
FROM containers(DBA_DATA_FILES)
GROUP BY TABLESPACE_NAME, con_id) D,
(SELECT TABLESPACE_NAME,
con_id,
ROUND(SUM(BYTES) / (1024 * 1024), 2) FREE_SPACE
FROM containers(DBA_FREE_SPACE)
GROUP BY TABLESPACE_NAME, con_id) F,
v$pdbs t
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
and D.CON_ID = F.CON_ID
and F.con_id = t.CON_ID(+)
UNION ALL
SELECT nvl(t.name, 'CDB$ROOT') as DB_NAME,
D.TABLESPACE_NAME,
SPACE,
USED_SPACE,
ROUND(NVL(USED_SPACE, 0) / SPACE * 100, 2) ratio,
NVL(FREE_SPACE, 0)
FROM (SELECT TABLESPACE_NAME,
con_id,
ROUND(SUM(decode(maxbytes, 0, bytes, maxbytes)) /
(1024 * 1024),
2) SPACE,
SUM(BLOCKS) BLOCKS
FROM containers(DBA_TEMP_FILES)
GROUP BY TABLESPACE_NAME, con_id) D,
(SELECT TABLESPACE_NAME,
con_id,
ROUND(SUM(BYTES_USED) / (1024 * 1024), 2) USED_SPACE,
ROUND(SUM(BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE
FROM containers(V$TEMP_SPACE_HEADER)
GROUP BY TABLESPACE_NAME, con_id) F,
v$pdbs t
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
and D.CON_ID = F.CON_ID
and F.con_id = t.CON_ID(+)
ORDER BY 1
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。