--v$session_wait檢視中的p1、p2、p3表示等待事件的具體含義,如果wait event是db file scattered read,那麼p1=file_id/p2=block_id/p3=blocks,然後通過dba_extents即可
確定出熱點物件.
--如果是latch free的話,那麼p2為閂鎖號,它指向v$latch.
--求等待事件及其對應的latch
col event format a32;
col name format a32;
select sid,event,p1 as "p1 as file_id", p2 as "p2 as block_id/latch", p3 as "p3 as blocks",l.name
from v$session_wait sw,v$latch l
where event not like '%sql%' and event not like '%rdbms%' and event not like '%mon%' and sw.p2 = l.latch#(+);
--求等待事件及其熱點物件
col owner format a18;
col segment_name format a32;
col segment_type format a32;
select owner, segment_name, segment_type from dba_extents
where file_id = &file_id and &block_id between block_id and block_id + &blocks - 1;
--綜合以上兩條sql,同時顯示latch及熱點物件(速度較慢)
select sw.sid, event, l.name, de.segment_name from v$session_wait sw, v$latch l, dba_extents de
where event not like '%sql%' and event not like '%rdbms%' and event not like '%mon%'
and sw.p2 = l.latch#(+) and sw.p1 = de.file_id(+) and p2 between de.block_id and de.block_id + de.blocks - 1;
--如果是非空閒等待事件,通過等待會話的sid可以求出該會話在執行的sql
select sql_text from v$sqltext_with_newlines st, v$session se
where st.address = se.sql_address and st.hash_value = se.sql_hash_value and se.sid = &wait_sid order by piece;
等待事件 buffer busy waits
事件引數說明 事件號 145 事件名 buffer busy waits 引數一 file 引數二 block 引數三 9i 原因碼,10g block class 事件說明 一 oracle會話正在等待pin住乙個緩衝區,會話必須在讀取或修改緩衝區之前將該緩衝區pin住。二 在任何時侯只有乙個程序...
GC Blocks Lost等待事件
在oracle rac環境中,無論我們從awr自動負載效能報告 statspack或者grid control中都可以找到oracle資料庫軟體所收集的全域性快取工作負載統計資訊 global cache work load statistics 其中就包含了全域性快取塊丟失 global cach...
等待事件 wait event
衡量資料庫狀況,優化資料庫等 當乙個程序連線到資料庫後,程序所經歷的種種等待就開始被記錄,並且通過一系列的效能檢視進行展示,通過等待事件使用者可以很快發現資料庫的效能瓶頸,從而進行針對性能的優化和分析.v event name oracle 等待事件主要分兩類 空閒等待 idle 和 非空閒等待 n...