SQL Queries to Check ACTIVE / INACTIVE Sessions
Total Count of sessions
SELECTย Count(s.status)ย TOTAL_SESSIONS
FROMย ย ย gv$sessionย s;
Total Count of Inactive sessions
SELECTย Count(s.status)ย INACTIVE_SESSIONS
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ;
SESSIONS WHICH ARE IN INACTIVE STATUS FROM MORE THAN 1HOUR
SELECTย Count(s.status)ย โINACTIVEย SESSIONSย >ย 1HOURย โ
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.last_call_etย >ย 3600
ANDย s.statusย =ย โINACTIVEโ;
COUNT OF ACTIVE SESSIONS
SELECTย Count(s.status)ย ACTIVE_SESSIONS
FROMย ย ย gv$sessionย s,
$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โACTIVEโ;
TOTAL SESSIONS COUNT ORDERED BY PROGRAM
colย programย FORย a30
SELECTย s.program,
Count(s.program)ย Total_Sessions
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
GROUPย ย BYย s.program;
TOTAL COUNT OF SESSIONS ORDERED BY MODULE
colย MODULEย FORย a30
promptย totalย sessions
SELECTย s.MODULE,
Count(s.sid)ย Total_Sessions
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
GROUPย ย BYย s.MODULE;
TOTAL COUNT OF SESSIONS ORDERED BY ACTION
colย actionย FORย a30
promptย totalย sessions
SELECTย s.action,
Count(s.sid)ย Total_Sessions
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
GROUPย ย BYย s.action;
INACTIVE SESSIONS
promptย inactiveย sessions
SELECTย p.spid,
s.sid,
s.last_call_etย /ย 3600ย last_call_et,
s.status,
s.action,
s.MODULE,
s.program
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ;
INACTIVE
promptย inactiveย sessions
SELECTย Count(s.status)ย INACTIVE
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
v$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ;
INACTIVE PROGRAMS
colย MODULEย FORย a40
promptย inactiveย sessions
colย inactive_programsย FORย a40
SELECTย DISTINCTย (ย s.programย )ย INACTIVE_PROGRAMS,
s.MODULE
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ;
INACTIVE PROGRAMS with disk reads
promptย inactiveย sessions
SELECTย DISTINCTย (ย s.programย )ย INACTIVE_PROGRAMS,
SUM(T.disk_reads)
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
v$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
GROUPย ย BYย S.program;
INACTIVE SESSIONS COUNT WITH PROGRAM
colย programย FORย a30
promptย totalย inactiveย sessions
colย inactive_programsย FORย a40
SELECTย s.program,
Count(s.program)ย Total_Inactive_Sessions
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
GROUPย ย BYย s.program
ORDERย ย BYย 2ย DESC;
TOTAL INACTIVE SESSIONS MORE THAN 1HOUR
colย programย FORย a30
colย inactive_programsย FORย a40
SELECTย s.program,
Count(s.program)ย Inactive_Sessions_from_1Hour
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.last_call_etย >ย (ย 3600ย )
GROUPย ย BYย s.program
ORDERย ย BYย 2ย DESC;
TOTAL INACTIVE SESSIONS GROUP BYย MODULE
colย programย FORย a30
colย inactive_programsย FORย a40
SELECTย s.program,
Count(s.program)ย Inactive_Sessions_from_1Hour
FROMย ย ย gv$sessionย s,
v$processย p
WHEREย ย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.last_call_etย >ย (ย 3600ย )
GROUPย ย BYย s.program
ORDERย ย BYย 2ย DESC;
INACTIVE SESSION DETAILS MORE THAN 1 HOUR
setย pagesizeย 40
colย inst_idย FORย 99
colย spidย FORย a10
setย linesizeย 150
colย programย FORย a10
colย actionย formatย a10
colย logon_timeย formatย a16
colย MODULEย formatย a13
colย cli_processย formatย a7
colย cli_machย FORย a15
colย statusย formatย a10
colย usernameย formatย a10
colย last_call_et_hrsย FORย 9999.99
colย sql_hash_valueย FORย 9999999999999colย usernameย FORย a10
setย linesizeย 152
setย pagesizeย 80
colย โLastย SQLโย FORย a60
colย elapsed_timeย FORย 999999999999
SELECTย p.spid,
s.sid,
s.last_call_etย /ย 3600ย last_call_et_Hrs,
s.status,
s.action,
s.MODULE,
s.program,
t.disk_reads,
Lpad(t.sql_text,ย 30)ย ย โLastย SQLโ
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
gv$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.last_call_etย >ย (ย 3600ย )
ORDERย ย BYย last_call_et;
INACTIVE PROGRAMย
SELECTย p.spid,
s.sid,
s.last_call_etย /ย 3600ย last_call_et_Hrs,
s.status,
s.action,
s.MODULE,
s.program,
t.disk_reads,
Lpad(t.sql_text,ย 30)ย ย โLastย SQLโ
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
gv$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.programย =ย โ&PROGRAM_NAMEโ
ORDERย ย BYย last_call_et;
INACTIVE MODULESย
SELECTย p.spid,
s.sid,
s.last_call_etย /ย 3600ย last_call_et_Hrs,
s.status,
s.action,
s.MODULE,
s.program,
t.disk_reads,
Lpad(t.sql_text,ย 30)ย ย โLastย SQLโ
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
gv$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.MODULEย LIKEย โ%order_cleanup_hazmat_v3.sqlโ
ORDERย ย BYย last_call_et;
INACTIVE JDBC SESSIONS
setย pagesizeย 40
colย inst_idย FORย 99
colย spidย FORย a10
setย linesizeย 150
colย programย FORย a10
colย actionย formatย a10
colย logon_timeย formatย a16
colย MODULEย formatย a13
colย cli_processย formatย a7
colย cli_machย FORย a15
colย statusย formatย a10
colย usernameย formatย a10
colย last_call_etย FORย 9999.99
colย sql_hash_valueย FORย 9999999999999colย usernameย FORย a10
setย linesizeย 152
setย pagesizeย 80
colย โLastย SQLโย FORย a60
colย elapsed_timeย FORย 999999999999
SELECTย p.spid,
s.sid,
s.last_call_etย /ย 3600ย last_call_et,
s.status,
s.action,
s.MODULE,
s.program,
t.disk_reads,
Lpad(t.sql_text,ย 30)ย ย โLastย SQLโ
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
gv$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.programย =ย โJDBCย Thinย Clientโ
ANDย s.last_call_etย >ย 3600
ORDERย ย BYย last_call_et;
COUNT OF INACTIVE SESSIONS MORE THAN ONE HOUR
SELECTย Count(P.spid)
FROMย ย ย gv$sessionย s,
gv$sqlareaย t,
gv$processย p
WHEREย ย s.sql_addressย =ย t.address
ANDย s.sql_hash_valueย =ย t.hash_value
ANDย p.addrย =ย s.paddr
ANDย s.statusย =ย โINACTIVEโ
ANDย s.programย =ย โJDBCย Thinย Clientโ
ANDย s.last_call_etย >ย 3600
ORDERย ย BYย last_call_et;
Oracle Solutions We believe in delivering tangible results for our customers in a cost-effective manner