--查询表空间使用率
SELECT a.tablespace_name "表空间名称",
total/(1024*1024) "表空间大小(M)",
free/(1024*1024) "表空间剩余大小(M)",
(total - free)/(1024*1024 ) "表空间使用大小(M)",
total/(1024*1024*1024) "表空间大小(G)",
free/(1024*1024*1024) "表空间剩余大小(G)",
(total - free)/(1024*1024*1024) "表空间使用大小(G)",
round((total - free)/total, 4)*100 "使用率 %"
FROM (SELECT tablespace_name, SUM(bytes) free
FROM dba_free_space
GROUP BY tablespace_name) a,
(SELECT tablespace_name,SUM(bytes) total
FROM dba_data_files
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name;
--查看表占用空间大小
select segment_name,
tablespace_name,
segment_type,
bytes B,
round(bytes / 1024, 1) KB,
round(bytes / 1024 / 1024, 1) MB,
round(bytes / 1024 / 1024 / 1024, 2) GB
from dba_segments
where segment_type = 'TABLE PARTION'
-- and tablespace_name = 'SYSDBA'
order by bytes DESC LIMIT 0,10;