OracleのセッションIDからOSのプロセスIDを調べる方法

Oracleで障害調査を行いたいときなどに、sidからOSのプロセスID(pid)を調査する場合があります。そんな時は下記のSQLでpidを確認することができます。

select
    ses.sid,
    proc.spid,
    ses.username,
    ses.osuser,
    ses.machine,
    ses.program,
    ses.sql_id
from
    v$session ses
    left join v$process proc on(ses.paddr = proc.addr)
where
    ses.SID='[sid]'

こんな感じです。
トレースの際などに利用できますね。

ちなみにOEMから確認もできるので場合によってはそっちの方が圧倒的に早いです‥。

コメントを残す

メールアドレスが公開されることはありません。