v$active_session_history的wait_time和time_waited列
最近在弄informix,oracle调优也好久没碰了,今天朋友问我v$active_session_history的wait_time和time_waited 怎么看,只记得用过,一下也没想起。连忙验证了下
成都创新互联专业为企业提供坪山网站建设、坪山做网站、坪山网站设计、坪山网站制作等企业网站建设、网页设计与制作、坪山企业网站模板建站服务,10年坪山做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
wait_time 这列,对于在采样时,正在等待的事件,该列为0。对应session_state列。不为0的行是在进行CPU
time_waited这列,是这次等待的等待时间,如果该种类的等待的时间的超时时间大于1秒,那么如果等待了超过了1秒,本次采样的time_waited为0,在最后一次采样到该等待时,置上等待时间。单位百万分之一秒。也就是说,time_waited为0的行也不用看,因为等待时候在后面会体现,其和最后的行是同一次等待。
下面是以前用过的一个SQL
SELECT EVENT,
COUNT(*) TOTAL_WAITS,
TRUNC(SUM(TIME_WAITED) / 1000000) SECONDS_IN_WAIT
FROM V$ACTIVE_SESSION_HISTORY
WHERE SESSION_STATE = 'WAITING'
AND TIME_WAITED > 0
AND SAMPLE_ID BETWEEN 1800000 AND 2000000
AND SESSION_ID = 144
AND SQL_ID = 'cgb71p2hy4zfj'
GROUP BY EVENT
其实v$active_session_history就是一个语句在运行中遇到的所有等待的统计,可以一定程度上代替10046来查看SQL遭遇的等待
分享标题:v$active_session_history的wait_time和time_waited列
转载来源:http://scyanting.com/article/pgpjss.html