Wednesday, 31 May 2023

Which SQLs are being run in DB along with various user and session details

set verify off
set head off
col sql_text for a80
set lines 300

SELECT /*+ ORDERED */
 chr(10) || 'Username: ' || s.username ||
 chr(10) || 'OSuser:   ' || s.osuser ||
 chr(10) || 'Machine:  ' || nvl(s.machine, '?') ||
 chr(10) || 'Program:  ' || nvl(s.program, '?') ||
 chr(10) || 'Login:    ' || to_char(logon_time,'DD-MON-YY HH24:MI:SS') ||
 chr(10) || 'Status:   ' || s.status ||
 chr(10) || 'Process:  ' || s.process ||
 chr(10) || 'SID:      ' || s.sid ||
 chr(10) || 'Serial#:  ' || s.serial# ||
 chr(10) || 'PID:      ' || p.spid,
            'SQLText:  ' || chr(10) || X.sql_text sql_text
FROM   v$session S,
 v$process P,
 v$sqlarea X
WHERE
       s.sid   like nvl('&SID','%')
AND    s.paddr    = p.addr
AND    s.type    != 'BACKGROUND'
AND    s.sql_address    = x.address
AND    s.sql_hash_value = x.hash_value
AND    s.type = 'USER'
ORDER
    BY S.sid
/