-- 查看当前表空间使用情况:
SELECT
SUBSTR(a.TABLESPACE_NAME, 1, 30) TablespaceName,
round(SUM(a.bytes / 1024 / 1024 / 1024), 2) AS "Totle_size(G)",
round(SUM(NVL(b.free_space1 / 1024 / 1024 / 1024, 0)), 2) AS "Free_space(G)",
round(SUM(a.bytes / 1024 / 1024 / 1024), 2) - round(SUM(NVL(b.free_space1 / 1024 / 1024 / 1024, 0)), 2) AS "Used_space(G)",
ROUND(
(
SUM(a.bytes / 1024 / 1024 / 1024) - SUM(NVL(b.free_space1 / 1024 / 1024 / 1024, 0))) * 100 / SUM(a.bytes / 1024 / 1024 / 1024),
2) AS "Used_percent%",
round(
SUM((CASE WHEN a.MAXBYTES = 0 THEN a.bytes ELSE a.MAXBYTES END) / 1024 / 1024 / 1024),
2) AS "Max_size(G)",
ROUND(
(
SUM(a.bytes / 1024 / 1024 / 1024) - SUM(NVL(b.free_space1 / 1024 / 1024 / 1024, 0))) * 100 / SUM((CASE WHEN a.MAXBYTES = 0 THEN a.bytes ELSE a.MAXBYTES END) / 1024 / 1024 / 1024),
2) AS "Max_percent%"
FROM
dba_data_files a,
(SELECT SUM(NVL(bytes, 0)) free_space1, file_id FROM dba_free_space GROUP BY file_id) b
WHERE
a.file_id = b.file_id (+)
GROUP BY
a.TABLESPACE_NAME
ORDER BY
"Used_percent%" DESC;
Oracle查看表空间使用情况
于 2025-02-05 14:07:03 首次发布