2017-07-28 87 views

回答

1

簡而言之,v$session中的INACTIVE狀態表示在檢入v$session時沒有執行SQL語句。

就本質而言,大量的ACTIVE會話會減慢整個DBMS,包括您的應用程序,並可能導致CPU利用率高。

非活動會話的影響很小,除非您超過最大會話數。

活動會話的CPU使用率可以通過以下查詢來檢查。

SELECT 
    s.username, 
    t.sid, 
    s.serial#, 
    SUM(VALUE/100) as "cpu usage (seconds)" 
FROM 
    v$session s, 
    v$sesstat t, 
    v$statname n 
WHERE 
    t.STATISTIC# = n.STATISTIC# 
AND 
    NAME like '%CPU used by this session%' 
AND 
    t.SID = s.SID 
AND 
    s.status='ACTIVE' 
AND 
    s.username is not null 
GROUP BY username,t.sid,s.serial# 
/

退房ORACLE的V $會議文件http://docs.oracle.com/cd/B19306_01/server.102/b14237/dynviews_2088.htm#REFRN30223

+0

感謝@XING你的答案。你能否指定一件事是否影響應用程序性能?我的意思是CPU是好的,但應用程序是否會表現正常或可能會變慢。 –

+0

我已經提到過,它幾乎不會影響您的應用程序,直到您超過最大會話數。 – XING

+1

好的再次感謝。 –