Here's the script that I use to get the session & the current SQL statement:
 
define sid = &1
column client_info format A30 trunc
column program format A40 trunc
break on sql_address on sql_hash_value
column sql_address noprint new_value _addr
column sql_hash_value noprint new_value _hash
set verify off
set linesize 132
spool /ora1/pid.lis
select spid, sid, v$session.status, client_info, v$session.program, sql_address, sql_hash_value
from v$session, v$process
where paddr = addr
  and spid = '&sid'
  and v$session.username is not null;
 
select sql_text
from v$sqltext_with_newlines
where address = '&_addr'
  and hash_value = &_hash
order by piece;
undef sid
spool off
exit
Dick Goulet
-----Original Message-----
From: Sam Bootsma [mailto:[EMAIL PROTECTED]
Sent: Friday, April 04, 2003 6:19 PM
To: Multiple recipients of list ORACLE-L
Subject: How to Determine Oracle Session ID given UNIX PID?

Oracle 7.3.4 running on AIX 4.3.3

 

The ps command on our AIX box shows a UNIX process taking 50% of the CPU.  The PID is 89510.  When I try to find the corresponding session on the Oracle database it returns no rows.  Is there a way I can map the given PID on UNIX to a session id on Oracle?  See below for the query I ran.

 

SQL> l

  1  select sid from v$session

  2* where process like '%89510%'

SQL> /

 

no rows selected

 

Thanks for your information!

 

 

 

Sam

[EMAIL PROTECTED]

 

Reply via email to