通过以下sql语句可以查看Oracle12c数据库中所有表空间的使用情况:
可以通过以下语句查看Oracle12c数据库中所有表空间的使用情况:
-
SELECT F.TABLESPACE_NAME,
-
(T.TOTAL_SPACE - F.FREE_SPACE) / 1024 "USED (GB)",
-
F.FREE_SPACE / 1024 "FREE (GB)",
-
T.TOTAL_SPACE / 1024 "TOTAL(GB)",
-
(ROUND((F.FREE_SPACE / T.TOTAL_SPACE) * 100)) || '% ' PER_FREE
-
FROM (SELECT TABLESPACE_NAME,
-
ROUND(SUM(BLOCKS *
-
(SELECT VALUE / 1024
-
FROM V$PARAMETER
-
WHERE NAME = 'db_block_size') / 1024)) FREE_SPACE
-
FROM CDB_FREE_SPACE
-
GROUP BY TABLESPACE_NAME) F,
-
(SELECT TABLESPACE_NAME, ROUND(SUM(BYTES / 1048576)) TOTAL_SPACE
-
FROM CDB_DATA_FILES
-
GROUP BY TABLESPACE_NAME) T
-
WHERE F.TABLESPACE_NAME = T.TABLESPACE_NAME;
可以通过添加筛选条件查看指定表空间的使用情况,代码如下:
-
SELECT F.TABLESPACE_NAME,
-
(T.TOTAL_SPACE - F.FREE_SPACE) / 1024 "USED (GB)",
-
F.FREE_SPACE / 1024 "FREE (GB)",
-
T.TOTAL_SPACE / 1024 "TOTAL(GB)",
-
(ROUND((F.FREE_SPACE / T.TOTAL_SPACE) * 100)) || '% ' PER_FREE
-
FROM (SELECT TABLESPACE_NAME,
-
ROUND(SUM(BLOCKS *
-
(SELECT VALUE / 1024
-
FROM V$PARAMETER
-
WHERE NAME = 'db_block_size') / 1024)) FREE_SPACE
-
FROM CDB_FREE_SPACE
-
GROUP BY TABLESPACE_NAME) F,
-
(SELECT TABLESPACE_NAME, ROUND(SUM(BYTES / 1048576)) TOTAL_SPACE
-
FROM CDB_DATA_FILES
-
GROUP BY TABLESPACE_NAME) T
-
WHERE F.TABLESPACE_NAME = T.TABLESPACE_NAME AND T.TABLESPACE_NAME LIKE 'ABC%';
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31403259/viewspace-2143332/
,如需转载,请注明出处,否则将追究法律责任。