學(xué)習(xí)動態(tài)性能表第15篇--V$ROLLSTAT
本視圖自啟動即保持并記錄各回滾段統(tǒng)計項。
V$ROLLSTAT中的常用列
USN:回滾段標(biāo)識
RSSIZE:回滾段默認(rèn)大小
XACTS:活動事務(wù)數(shù)
在一段時間內(nèi)增量用到的列
WRITES:回滾段寫入數(shù)(單位:bytes)
SHRINKS:回滾段收縮次數(shù)
EXTENDS:回滾段擴(kuò)展次數(shù)
WRAPS:回滾段翻轉(zhuǎn)(wrap)次數(shù)
GETS:獲取回滾段頭次數(shù)
WAITS:回滾段頭等待次數(shù)
V$ROLLSTAT中的連接列
Column View Joined Column(s)
-------------- ----------------------- ------------------------
USN V$ROLLNAME USN
注意:
通過花費時間除以翻轉(zhuǎn)次數(shù),你可以得到一次回滾段翻轉(zhuǎn)(wrap)的平均用時。此方法常用于在長查詢中指定合適的回滾段大小以避免'Snapshot Too Old'錯誤。同時,通過查看extends和shrinks列可以看出optimal是否需要增加。
示例:
1.查詢回滾段的信息。所用數(shù)據(jù)字典:DBA_ROLLBACK_SEGS,可以查詢的信息:回滾段的標(biāo)識(SEGMENT_ID)、名稱(SEGMENT_NAME)、所在表空間(TABLESPACE_NAME)、類型(OWNER)、狀態(tài)(STATUS)。
select * from DBA_ROLLBACK_SEGS
查看回滾段的統(tǒng)計信息:
SELECT n.name, s.extents, s.rssize, s.optsize, s.hwmsize, s.xacts, s.status
FROM v$rollname n, v$rollstat s
WHERE n.usn = s.usn;
3.查看回滾段的使用情況,哪個用戶正在使用回滾段的資源:
select s.username, u.name
from v$transaction t, v$rollstat r, v$rollname u, v$session s
where s.taddr = t.addr
and t.xidusn = r.usn
and r.usn = u.usn
order by s.username;