當(dāng)前位置:首頁 > IT技術(shù) > 數(shù)據(jù)庫 > 正文

Oracle 查詢表空間使用率 SQL 語句
2021-09-13 10:32:11

Oracle 數(shù)據(jù)庫的表空間如果使用超過100%,會導(dǎo)致數(shù)據(jù)庫無法使用,因此需要及時擴(kuò)展!

通過 sql 查詢當(dāng)前數(shù)據(jù)庫所有表空間的使用率:

set line222
col pagesize1000
col TABLESPACE_NAME for a40
select tbs_used_info.tablespace_name,
       tbs_used_info.alloc_mb,
       tbs_used_info.used_mb,
       tbs_used_info.max_mb,
       tbs_used_info.free_of_max_mb,
       tbs_used_info.used_of_max || '%' used_of_max_pct
  from (select a.tablespace_name,
               round(a.bytes_alloc / 1024 / 1024) alloc_mb,
               round((a.bytes_alloc - nvl(b.bytes_free,
                                          0)) / 1024 / 1024) used_mb,
               round((a.bytes_alloc - nvl(b.bytes_free,
                                          0)) * 100 / a.maxbytes) used_of_max,
               round((a.maxbytes - a.bytes_alloc + nvl(b.bytes_free,
                                                       0)) / 1048576) free_of_max_mb,
               round(a.maxbytes / 1048576) max_mb
          from (select f.tablespace_name,
                       sum(f.bytes) bytes_alloc,
                       sum(decode(f.autoextensible,
                                  'YES',
                                  f.maxbytes,
                                  'NO',
                                  f.bytes)) maxbytes
                  from dba_data_files f
                 group by tablespace_name) a,
               (select f.tablespace_name,
                       sum(f.bytes) bytes_free
                  from dba_free_space f
                 group by tablespace_name) b
         where a.tablespace_name = b.tablespace_name(+)) tbs_used_info
 order by tbs_used_info.used_of_max desc;

本次分享到此結(jié)束啦~

如果覺得文章對你有幫助,點贊、收藏、關(guān)注、評論,一鍵四連支持,你的支持就是我創(chuàng)作最大的動力。

?? 技術(shù)交流可以 關(guān)注公眾號:Lucifer三思而后行 ??

本文摘自 :https://blog.51cto.com/l

開通會員,享受整站包年服務(wù)立即開通 >