SELECT * FROM v$session
을 보면 현재 연결되어있는 모든 세션을 볼 수 있다..
현재 active상태인 것과 inactive상태인것을 확인하려면ㅇ
SELECT status,COUNT(*) FROM v$session
WHERE username=?
GROUP BY status
* 동접 세션 이전 최대 개수
SQL> select SESSIONS_HIGHWATER from v$license;SESSIONS_HIGHWATER------------------ 25
* 현재 세션 중 Active한 세션 개수 조회
SQL> select to_char(sysdate, 'YYYY/MM/DD hh24:mi:ss') "Time", 2 count(*) "Total Sessions", 3 count(decode(status, 'ACTIVE', 1) ) "Active Sessions" 4 from v$session;Time Total Sessions Active Sessions------------------- -------------- ---------------2015/04/28 22:27:49 21 18
* 현재 사용 세션 개수, 최대 사용 세션 개수 및 제한 세션 개수
select resource_name, current_utilization, max_utilization, limit_value from v$resource_limit where resource_name in ('sessions', 'processes');
RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION LIMIT_VALUE------------- ------------------- --------------- -----------processes 96 309 500sessions 104 323 792
* 사용자 세션 상세
select substr(a.spid,1,9) pid, substr(b.sid,1,5) sid, substr(b.serial#,1,5) ser#, substr(b.machine,1,6) box, substr(b.username,1,10) username,-- b.server, substr(b.osuser,1,8) os_user, substr(b.program,1,30) programfrom v$session b, v$process awhereb.paddr = a.addrand type='USER'order by spid;