buffer cache實驗8-free buffer waits-完成
伺服器程式在掃描LRU主列時,將髒塊移動到LRUW列。當掃描到一個閥值(10G/11G是40%- _db_block_max_scan_pct引數決定)時會停止掃描同時通知DBWR寫髒塊-寫髒塊完後的塊重新掛載到輔助LRU列,就得到了空閒buffer。
DBWR程式寫髒塊完成前,伺服器程式等待空閒buffer時出現free buffer waits等待事件
關於物理讀時找空閒BUFFER,LRUW與寫髒塊詳細過程,詳見:
_db_block_max_scan_pct 引數的預設值--11.2.0.4
P_NAME P_DESCRIPTION P_VALUE ISDEFAULT ISMODIFIED ISADJ
---------------------------------------- -------------------------------------------------- ------------------------------ --------- ---------- -----
_db_block_max_scan_pct Percentage of buffers to inspect when looking for ree 40 TRUE FALSE FALSE
引起爭用的場景及解決思路:
低效SQL-需要更多無關的資料塊,需要更多buffer,容易出現free buffer waits等待事件
buffer cache小不夠用--就是記憶體小buffer cache給的空間小,是實實在在的不夠用,考慮增大buffer cache。
DBWR寫的效能差--可能是資料庫的主機CPU資源緊張,DBWR程式工作慢,或者I/O慢,影響寫入速度,或者是CPU和I/O都沒問題,可以考慮增大DBWR程式數量。
因為DBWR程式寫髒塊到資料檔案時,會以獨佔模式佔用髒緩衝區,此時有其它程式要讀取或修改髒緩衝區,需要等待DBWR寫資料完成,此時會出現write complete waits等待。
判斷DBWR/儲存效能導致此類問題的步驟:
磁碟繁忙程度
磁碟響應時間--大I/0不超過20MS,小I/O不超過5MS
IOPS是否正常--每盤150左右
儲存CACHE是否正常--這個偶爾會出現
和儲存相關的硬體是否正常執行
-------如磁碟正常,要考慮增加DBWR程式數量--一般不能超過CPU數量。
free buffer waits等待常由應用--低效SQL引起
write complete waits等待常由儲存效能引起。 --此段來自周亮《ORACLE DBA實戰攻略》
DBWR程式寫髒塊完成前,伺服器程式等待空閒buffer時出現free buffer waits等待事件
關於物理讀時找空閒BUFFER,LRUW與寫髒塊詳細過程,詳見:
_db_block_max_scan_pct 引數的預設值--11.2.0.4
P_NAME P_DESCRIPTION P_VALUE ISDEFAULT ISMODIFIED ISADJ
---------------------------------------- -------------------------------------------------- ------------------------------ --------- ---------- -----
_db_block_max_scan_pct Percentage of buffers to inspect when looking for ree 40 TRUE FALSE FALSE
引起爭用的場景及解決思路:
低效SQL-需要更多無關的資料塊,需要更多buffer,容易出現free buffer waits等待事件
buffer cache小不夠用--就是記憶體小buffer cache給的空間小,是實實在在的不夠用,考慮增大buffer cache。
DBWR寫的效能差--可能是資料庫的主機CPU資源緊張,DBWR程式工作慢,或者I/O慢,影響寫入速度,或者是CPU和I/O都沒問題,可以考慮增大DBWR程式數量。
因為DBWR程式寫髒塊到資料檔案時,會以獨佔模式佔用髒緩衝區,此時有其它程式要讀取或修改髒緩衝區,需要等待DBWR寫資料完成,此時會出現write complete waits等待。
判斷DBWR/儲存效能導致此類問題的步驟:
磁碟繁忙程度
磁碟響應時間--大I/0不超過20MS,小I/O不超過5MS
IOPS是否正常--每盤150左右
儲存CACHE是否正常--這個偶爾會出現
和儲存相關的硬體是否正常執行
-------如磁碟正常,要考慮增加DBWR程式數量--一般不能超過CPU數量。
free buffer waits等待常由應用--低效SQL引起
write complete waits等待常由儲存效能引起。 --此段來自周亮《ORACLE DBA實戰攻略》
相關文章
- buffer cache實驗7-buffer busy waits-完成AI
- buffer cache實驗5-latch:cache buffers chainAI
- buffer cache實驗6-latch:cache buffers lru chainsAI
- IO之核心buffer----"buffer cache"
- oracle實驗記錄 (buffer_cache分析(1))Oracle
- Buffer Cache 原理
- cache buffer chainAI
- buffer cache實驗2-詳解Buffer Header--DUMP buffer結合X$BH檢視各欄位Header
- Buffer Cache Hit Ratio
- Oracle Buffer Cache原理Oracle
- Oracle database buffer cacheOracleDatabase
- CACHE BUFFER CHAINSAI
- Database Buffer Cache (79)Database
- oracle實驗記錄 (buffer_cache分析(2)cbc latch)Oracle
- 【BUFFER】Oracle buffer cache之 latch 學習記錄Oracle
- Oracle Cache Buffer ChainsOracleAI
- linux cache and buffer【轉】Linux
- Latch: cache buffer chains (%)AI
- BUFFER CACHE尋找流程
- buffer cache logical structure!Struct
- buffer cache部分原理(LRU)
- Organization of the Database Buffer Cache (80)Database
- Size of the Database Buffer Cache (82)Database
- buffer cache實驗1-記憶體結構圖解記憶體圖解
- oracle實驗記錄(buffer_cache分析(4)dbwr,lgwr,ckpt)Oracle
- Buffer Cache以及buffer busy waits/gc相關事件AIGC事件
- oracle buffer cache管理機制_buffer cache dump與lru機制小記Oracle
- page cache與buffer cache的關係
- Ask Hoegh(5)——buffer cache和buffer有什麼區別?
- oracle實驗記錄(buffer_cache分析(3)cbc lru chain latch)OracleAI
- buffer與cache的區別
- database buffer cache之我見Database
- buffer cache基本知識點
- BUFFER CACHE 基礎知識
- [Oracle Script] Buffer Cache Hit RatioOracle
- 等待模擬-cache buffer chainAI
- Buffer cache的執行原理
- Buffer和Cache的區別