[转]The differences between V$UNDOSTAT and V$ROLLSTAT
1。v$rollstat 显示每个undo segment的情况,v$undostat 显示系统当前的一个统计,主要用处估计当前系统需要多少的undo空间
2。如果数据库处于回滚段手动管理状态,那么v$undostat 中没有内容,而v$rollstat 始终有数据
3。v$undostat 视图每隔10分钟系统自动作一个更新,插入一条新数据,保留最多1008行记录,或者说7天的历史数据
可以理解为v$rollstat 是具体每个回滚段的信息,而v$undostat 是系统整个undo情况的信息
-- by Kamus (http://www.itpub.net/thread-233738-1-1.html)
http://fxbsmile.itpub.net/post/5700/493847
V$UNDOSTAT 提供统计直方图来表示system 工作状况, 统计的内容包括undo space 使用情况(consumption),事务的并发(transaction concurrency ) 以及 在instance 里执行过的查询的长度(指耗时多长). 你可以使用这个视图来评估在当前workload的情况下,对undo space 的使用需求. Oracle 使用这个视图来调整undo 的使用,但是如果你设置了手动管理undo 模式(manual undo management mode),这个View会返回null
Oracle 以每10分钟一个间隔来收集undo的statistics, 视图中每一行代表了每一个10分钟间隔所统计的记录. 按照Begin_time 做降序排序,Begin_time 和End_time 表明了这是哪一个时间间隔.每一个column代表了在这个时间间隔内的特有的统计数据,view的第一行是当前时间间隔的数据,整个View 一个包含了1008行数据,只保存7天的数据(spanning a 7 day cycle)
BEGIN_TIME
END_TIME
UNDOTSN 在这个时间段,最后一个活动undo tabspace 的ID
UNDOBLKS 代表了所使用的总共的undo block,可以用这个column 来获得 consumption rate of undo blocks, 依次评估undo tablespace 的size
TXNCOUNT 代表了在这个时间段所有的transaction数量
MAXQUERYLEN 反应了在这个period 中,最长的query,可以用他来评估UNDO_RETENTION参数.query 的长度是从这个cursor被open开始到最后一次fetch/execute
MAXQUERYID 代表了运行时间最长的query的SQL ID
MAXCONCURRENCY 代表了这个period中,最大的并发的transaction 数.
UNXPSTEALCNT 代表了有多少次试图从其它的transaction获取未到期(unexpired)的extent,
UNXPBLKRELCNT 有多少未到期的blocks被移动了,一边被其它的transaction使用.
UNXPBLKREUCNT 有多少未到期的blocks被其它的transaction重用了
EXPSTEALCNT 总共多少次试图获取多少到期的blocks 从其它的 other undo segments
EXPBLKRELCNT Number of expired undo blocks stolen from other undo segments
EXPBLKREUCNT Number of expired undo blocks reused within the same undo segments
SSOLDERRCNT Identifies the number of times the error ORA-01555 occurred,以用他来评估UNDO_RETENTION参数
NOSPACEERRCNT 有多少次出现no free space available 的情况,也就是说undo tablespace 空间不足了..
ACTIVEBLKS 时间段内undo表空间中活动的块数
UNEXPIREDBLKS 时间段内undo表空间中未过期的块数
EXPIREDBLKS 时间段内undo表空间中已过期的块数
TUNED_UNDORETENTION 优化的undo_retention参数的值
V$ROLLSTAT.txt
这个视图包括了Rollback segment 的统计信息.
---------------------------------------------
USN Rollback segment number
LATCH Latch for the rollback segment
EXTENTS Number of extents in the rollback segment
RSSIZE Size (in bytes) of the rollback segment. This value differs by the number
of bytes in one database block from the value of the BYTES column of the
ALL/DBA/USER_SEGMENTS views.
See Also: Oracle Database Administrator's Guide.
WRITES Number of bytes written to the rollback segment
XACTS Number of active transactions
GETS Number of header gets
WAITS Number of header waits
OPTSIZE Optimal size of the rollback segment
HWMSIZE High-watermark of rollback segment size
SHRINKS Number of times the size of a rollback segment decreases
WRAPS Number of times rollback segment is wrapped
EXTENDS Number of times rollback segment size is extended
AVESHRINK Average shrink size
AVEACTIVE Current size of active extents, averaged over time.
STATUS Rollback segment status:
ONLINE
PENDING OFFLINE
OFFLINE
FULL
CUREXT Current extent
CURBLK Current block
查看回滚段的使用情况,哪个用户正在使用回滚段的资源:
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;
--------------------------------------
Regards,
FangwenYu