ORACLE 等待事件

2021-07-11 01:15:51 字數 1929 閱讀 3153

1、gc current block 2-way

乙個例項請求對當前節點(主控節點)中的乙個資料塊進行修改,該資料塊又因為修改已快取在另一節點中。 存在『寫/寫』爭用

2、gc current block 3-way

乙個例項請求對當前訪問的乙個資料塊進行修改,主控節點收到請求,將訊息發給當前塊的擁有者,讓其放棄所有權,當前塊的擁有者接受到訊息,將獨佔鎖傳送給請求的例項,請求者才得以修改該資料塊。 存在『寫/寫』爭用

3、gc cr block 2-way

乙個例項請求對當前節點(主控節點)中的乙個資料塊進行讀取,該資料塊又因為修改已快取在另一節點中。 存在『寫/讀』爭用

4、gc cr block 3-way

乙個例項請求對當前訪問的乙個資料塊進行讀取,主控節點收到請求,將訊息發給當前塊的擁有者,當前塊的擁有者接受到訊息,將共享鎖傳送給請求的例項,請求者才得以獲取到該資料。 存在『寫/讀』爭用

5、gc current grant 2-way

乙個例項請求對當前訪問的乙個資料塊進行修改或者讀取,主控節點收到請求,發現還沒有任何例項鎖定該塊,於是將次訊息告訴請求者,並給他此資料塊獨佔鎖或者共享鎖的許可權。 不存在爭用

6、gc current block busy

乙個例項請求對當前訪問的乙個資料塊進行修改,主控節點收到請求,將訊息發給當前塊的擁有者,當前塊的擁有者接受到訊息,卻因為某種原因並不能將此資料塊的許可權給請求者,原因如下   存在嚴重的『寫/寫』爭用

a.這個塊正在被另外乙個例項上的乙個會話使用

b.擁有這個資料塊的例項不能馬上將相應的重做記錄寫到聯機重做日誌檔案中

select e.sid,e.time_waited,s.program,s.module from v$session_event e,v$session s where s.sid = e.sid and e.event='gc current block busy' order by e.time_waited

7、gc cr disk read

乙個例項請求對當前訪問的乙個資料塊進行讀取,主控節點收到請求,將訊息發給當前塊的擁有者,當前塊的擁有者接受到訊息,發現在自己的快取中找不到該塊(已被替換出快取),請求者得到擁有者發來許可權後需要自己去磁碟重新獲取該塊內容,才得以獲取到該資料。  不存在爭用

8、buffer busy global cr

乙個例項要生成當前塊的cr版本時,如果在本地快取中,例項要讀取事務表,並從回滾段或撤銷段中讀取這個塊的活動事務表中引用撤銷塊

9、gc cr failure

乙個例項請求對當前訪問的乙個資料塊進行讀取,主控節點收到請求,將訊息發給當前塊的擁有者,當前塊的擁有者接受到訊息,返回給請求者一條故障狀態的訊息。經常出現gc blocks lost需要檢視硬體和網路層。    比較嚴重

select * from v$sysstat where name = 'gc blocks lost' or name = 'gc claim blocks lost';

10、gc cr block busy   或者  gc current buffer busy

本地例項上的多個會話正在同時訪問相同的塊    不存在例項間的爭用,需要優化本地sql,減少請求的塊

11、gc current block congested  或者 gc cr block congested

乙個例項請求對當前訪問的乙個資料塊進行修改,主控節點收到請求,gcs(主控節或者其它此塊擁有者)並沒有資源(如 cpu忙)去處理該問題。   不存在爭用 ,可以增加lms程序來獲取更多cpu時間

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

oracle非空閒等待事件

oracle非空閒等待事件 已上傳 摘錄 事件引數說明 事件號 事件名 引數一 引數二 引數三 145buffer busy waits file block 9i 原因碼 10g block class oracle會話正在等待pin住乙個緩衝區,會話必須在讀取或修改緩衝區之前將該緩衝區pin住。...