天天看點

監控oracle等待事件

-- session總體等待

select a.sid,

       a.username,

       a.machine,

       a.terminal,

       b.event,

       b.total_waits,

       b.total_timeouts

  from v$session a, v$session_event b

 where a.sid = b.sid

   and a.status = 'active'

   and user# > 0;

-- session目前等待

       a.serial#,

       b.wait_time,

       b.seconds_in_wait,

       b.state

  from v$session a, v$session_wait b

-- session目前正在執行語句

       b.piece,

       b.sql_text

  from v$session a, v$sqltext b

 where b.address =

       decode(a.sql_hash_value, 0, a.prev_sql_addr, a.sql_address)

   and user# > 0

 order by a.sql_address, b.piece;

select a.sid, a.username, a.machine, a.terminal, c.name, b.value

  from v$session a, v$sesstat b, v$statname c

   and b.statistic# = c.statistic#

   and b.value > 0;