常見latch閂鎖等待
參考《oracle效能優化實務》
與共享池有關的latch閂鎖等待(共享池不足或碎片化問題導致)
shared pool
library cache
library cache pin
row cache objects
row cache enqueue latch
和lru chains或者hash chains相關的閂鎖
cache buffer handles
cache buffers chains
cache buffers lru chain
multiblock read objects
log buffer太小
過於頻繁的commit
redo log的io效能不佳
log switch過於頻繁
歸檔出現問題或者歸檔過慢
redo log相關主要閂鎖
redo copy
redo allocation :
9.2:log_parallelism
10g:_log_parallelism_max
redo writing
redo on-disk scn
simulator lru latch閂鎖爭用十分高原因:
cpu使用率很高
db cache較大,並且訪問負載較大
影響多個版本
9.2.0.5
10.1.0.2
10.2.0.3
11.1.0.6
解決方案
9.2,10.1:statistics_level = basic
10.2:db_cache_advice = off
其他archive control:和歸檔目錄有關
process allocation:和程序狀態修改有關,在短連線的系統中可能存在競爭
session allocation:和session資訊修改有關
sort extent pool:和硬碟排序有關
child cursor hash table:和sql分析以及cursor version有關
enqueue hash chains和鎖的管理有關
modify parameters values:動態調整引數有關
parallel query alloc buffer,parallel query stats :和並行查詢有關
ges*:和全域性鎖有關
gcs*:和全域性cache有關
超閂鎖和子閂鎖如何工作的
原文 hot it works sql server superlatch ing sub latches 閂鎖是應用在使用者模式下,在讀寫鎖結構應用在sql server 中用來保護內部結構。trace latch 是sql server 使用閂的例子,被trace controller 類建立並...
SQL Server裡的閂鎖介紹
閂鎖首次在sql server 7.0裡引入,同時微軟首次引入了行級別鎖 row level locking 對於行級別鎖引入閂鎖的概念是非常重要的,不然的話在記憶體中會出現丟失更新 lost updates 的現象。如我所說的,閂鎖是儲存引擎使用的輕量級同步物件,是sql server用來保護記憶...
簡單介紹SQL Server裡的閂鎖
在今天的文章裡我想談下sql server使用的更高階的,輕量級的同步物件 閂鎖 latch 閂鎖是sql server儲存引擎使用輕量級同步物件,用來保護多執行緒訪問記憶體內結構。文章的第1部分我會介紹sql server裡為什麼需要閂鎖,在第2部分我會給你介紹各個閂鎖型別,還有你如何能對它們進行...