查看Oracle表空间使用情况


1、查询表空间的总容量

select a.TABLESPACE_NAME, sum(a.BYTES) / 1024 / 1024 as MB
  from sys.dba_data_files a
 group by a.TABLESPACE_NAME

2、查询表空间的空闲容量

select b.TABLESPACE_NAME,
       count(1) as extends,
       sum(b.BYTES) / 1024 / 1024 as MB,
       sum(b.BLOCKS) as blocks
  from sys.dba_free_space b
 group by b.TABLESPACE_NAME

3、查询表空间的使用情况

select total.TABLESPACE_NAME,
       round(total.MB, 2) as TOTAL_MB,
       round(total.MB - free.MB, 2) as USED_MB,
       ROUND((1 - free.MB / total.MB) * 100, 2) || '%' as USED_PCT,
       ROUND(free.MB, 2) as FREE_mb
  from (select a.TABLESPACE_NAME, sum(a.BYTES) / 1024 / 1024 as MB
          from sys.dba_data_files a
         group by a.TABLESPACE_NAME) total,
       (select b.TABLESPACE_NAME,
               count(1) as extends,
               sum(b.BYTES) / 1024 / 1024 as MB,
               sum(b.BLOCKS) as blocks
          from sys.dba_free_space b
         group by b.TABLESPACE_NAME) free
 where total.TABLESPACE_NAME = free.TABLESPACE_NAME

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM