通过如下脚本进行创建视图,可以方便查看oracle数据库表空间利用率
create view sys.tablespqcecheck as select d.TABLESPACE_NAME,MAX_SPACE,round((SPACE_TEMP - nvl(FREE_SPACE,0)) / MAX_SPACE * 100, 0) USED_RATE FROM
(SELECT TABLESPACE_NAME,ROUND(SUM(DECODE(autoextensible,'YES',maxbytes,bytes)) / (1024 * 1024),2) MAX_SPACE, ROUND(SUM(bytes) / (1024 * 1024), 2) SPACE_TEMP FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) D,
(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) FREE_SPACE
FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F
where D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
order by USED_RATE desc;