oracle非空閒等待事件

2021-08-24 19:04:29 字數 1355 閱讀 5052

oracle非空閒等待事件 已上傳

摘錄 事件引數說明:

事件號

事件名

引數一

引數二

引數三

145buffer busy waits

file#

block#

9i  - 原因碼

10g - block class#

oracle會話正在等待pin住乙個緩衝區,會話必須在讀取或修改緩衝區之前將該緩衝區pin住。

在任何時侯只有乙個程序可以pin住乙個緩衝區。

buffer busy waits表明讀/讀、讀/寫、寫/寫爭用。

根據p3中指明的原因碼有不同的處理方式。

現象描述:

會話在sga中讀取或修改緩衝區之前,必須要先獲取cahce buffers chains鎖存器,獲取後然後遍歷這個緩衝區鏈,直到發現它需要的緩衝區頭。然後以共享方式或獨佔方式獲取該緩衝區鎖或緩衝區頭部的pin,一旦緩衝區被pin住,會話即釋放cache buffers chains鎖存器。如果無法獲得pin,會話就在buffer busy waits等待事件上等待。

該事件只與sga中緩衝區相關,與會話私有的pga中執行的讀/寫操作無關。

處理該等待事件時主要注意以下四方面:

1)

該等待事件主要的原因碼是什麼?(引數p3)

2)

buffer busy waits事件需要的塊類?(由p1即可找出等待塊的類列)

3)

緩衝區所屬的段

(由p1和p2引數配合檢視v$extents即可找出等待塊的所屬段)

select

s.segment_name, s.partition_name 

from

dba_extents s 

where

between

s.block_id 

and

(s.block_id + s.blocks -1) 

and

s.file_id = 

4)

和buffer busy waits事件相關的sql語句

ORACLE 等待事件

1 gc current block 2 way 乙個例項請求對當前節點 主控節點 中的乙個資料塊進行修改,該資料塊又因為修改已快取在另一節點中。存在 寫 寫 爭用 2 gc current block 3 way 乙個例項請求對當前訪問的乙個資料塊進行修改,主控節點收到請求,將訊息發給當前塊的擁有...

Oracle 等待事件解讀

oracle olap和oltp解讀 oracle index索引解讀 oracle 分割槽表解讀 oracle 鎖解讀 oracle 等待事件解讀 oracle procedure cursor解讀 等待事件主要可以分為兩類,即空閒 idle 等待事件和非空閒 non idle 等待事件。1 空閒...

ORACLE等待事件型別 一

author skate tiime 2009 11 18 oracle等待事件型別 classes of wait events 每乙個等待事件都屬於某一類,下面給出了每一類等待事件的描述。every wait event belongs to a class of wait event.the ...