[重慶思莊每日技術分享]-free buffer waits 等待事件

xianhua_33發表於2022-03-15

free buffer waits:當一個session試圖將一個block讀入buffer cache,或者由於讀一致需要構造cr的block找不到free buffer而產生的等待。

SQL> select name,parameter1,parameter2,parameter3,wait_class from v$event_name where name ='free buffer waits';

NAME                 PARAMETER1      PARAMETER2 PARAMETER3 WAIT_CLASS

-------------------- --------------- ---------- ---------- -------------------------------------------------------

free buffer waits    file#           block#     set-id#    Configuration

通常產生這個等待事件有以下原因:

1.buffer cache設定太小。

2.I/0寫太慢,不能及時將Dirty block寫到磁碟。

3.爛SQL導致大量的物理讀。

4.Dbwr程式太少

5.DML併發太高,寫不贏

p1:檔案號  p2:塊號 p3:10g以前沒有使用,10g以後表示LRU/LURW list的SET_ID#

Oracle最多會等待1秒,然後繼續嘗試查詢空閒緩衝區。

今天遇到這個問題了,檢視磁碟IO,BUSY% 是100%, IO READ 為300m/s ,這麼多讀,一問,結果為英方軟體一直在實時備份,9點之前該備份軟體停了,結果起來,就導致把IO佔完,停掉該軟體後,應用正常。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69950318/viewspace-2871277/,如需轉載,請註明出處,否則將追究法律責任。

相關文章