查詢表空間利用率--考慮自增長情況,此處利用率考慮的是相對於閥值的表空間利用率
select a.tablespace_name, total || 'm', free+shortnum|| 'm' free, total-free-shortnum || 'm' as used,
round((free+shortnum)/total * 100, 3) as "free%",round((total - free-shortnum)/total * 100, 3) as "used%" from
(select tablespace_name,autoextensible,case when t.autoextensible='yes' then (maxbytes-bytes)/1024/1024 else 0 end shortnum,case when t.autoextensible='yes' then sum(maxbytes)/1024/1024 else sum(bytes)/1024/1024 end as total from dba_data_files t group by tablespace_name,autoextensible,maxbytes,bytes) a,
(select tablespace_name, sum(bytes)/1024/1024 as free from dba_free_space group by tablespace_name) b
where a.tablespace_name = b.tablespace_name order by a.tablespace_name
查詢結果
追加,由於資料不斷增多,原定機器表空間大小有可能不夠用,也許會擴充套件表空間大小,即同乙個表空間名可能包含擴充套件和非擴充套件屬性的表空間,file_id也不一樣,於是有了下面這一條sql
select a.tablespace_name,a.file_id設定自動增長的,可取其最大閥值,不管自增量為多少,在磁碟空間足夠的情況下,表空間最終大小=閥值, total,
free
+shortnum free,
total
- free - shortnum as
used,
round((free + shortnum) / total *
100, 2) as "free%
",
round((total - free - shortnum) / total *
100, 2) as "used%
", autoextensible
from (select
tablespace_name,
file_id
, autoextensible,
case
when t.autoextensible =
'yes
'then
(sum(maxbytes) -
sum(bytes)) /
1024
/1024
else
0end
shortnum,
case
when t.autoextensible =
'yes
'then
sum(maxbytes) /
1024
/1024
else
sum(bytes) /
1024
/1024
endas
total
from
dba_data_files t
group
by tablespace_name,file_id
, autoextensible ) a,
(select tablespace_name, file_id,sum(bytes) /
1024
/1024
asfree
from
dba_free_space
group
by tablespace_name,file_id
) b
where a.tablespace_name = b.tablespace_name and a.file_id
=b.file_id
order
by a.tablespace_name
沒有你想要的?再逛逛:
oracle 表空間利用率的查詢
查詢表空間使用情況 select upper f.tablespace name 表空間名 d.tot grootte mb 表空間大小 m d.tot grootte mb f.total bytes 已使用空間 m to char round d.tot grootte mb f.total b...
計算Oracle表空間的利用率
問 怎樣才能正確計算oracle資料庫表空間的利用率?答 具體示例 如下 select upper f.tablespace name 表空間名 d.tot grootte mb 表空間大小 m d.tot grootte mb f.total bytes 已使用空間 m to char round...
cpu利用率 CPU利用率錯誤
cpu利用率 cpu利用率是每個人用來衡量處理器效能的指標。netflix的高階效能架構師布倫丹 格雷格 brendan gregg 在第16屆年度南加州linux expo scale 上稱其為 五分鐘公共服務公告 但 cpu卻是一種誤導性的衡量指標,說明處理器的實際繁忙程度。布倫丹在他的閃電演講...