要查看表空間的使用率,可以使用以下方法之一:
DBA_TABLESPACES
視圖:SELECT tablespace_name, round((1 - (free_space / total_space)) * 100, 2) as usage_rate
FROM dba_tablespaces;
這將返回所有表空間的名稱和使用率(以百分比表示)。
DBA_FREE_SPACE
視圖和DBA_DATA_FILES
視圖:SELECT f.tablespace_name, round((1 - (sum(f.bytes) / d.bytes)) * 100, 2) as usage_rate
FROM dba_free_space f
JOIN dba_data_files d ON f.tablespace_name = d.tablespace_name
GROUP BY f.tablespace_name, d.bytes;
這將返回每個表空間的名稱和使用率(以百分比表示)。
V$TABLESPACE
視圖:SELECT name, round((1 - (free_blocks / total_blocks)) * 100, 2) as usage_rate
FROM v$tablespace;
這將返回所有表空間的名稱和使用率(以百分比表示)。
請注意,這些查詢將返回表空間的整體使用率。如果您想查看特定表或索引的使用率,可以查詢DBA_SEGMENTS
視圖。