檢視等待事件

2022-07-04 21:30:21 字數 1404 閱讀 7984

--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...