library cache lock和library cache pin區別總結
library cache lock和library cache pin區別總結
library cache lock | library cache pin | |
共同點 | 同屬於資料字典鎖,目的是為了: 1、保持資料字典的一致性 2、為事務提供一致的物件定義檢視 | |
鎖物件 | 是為了請求library cache物件控制程式碼 | 是為了請求library cache資料heap |
先後關係 | 必須先期得到這個鎖 | 必須在得到library cache lock之後才能獲得這個鎖 |
獲取時間 | 在parse call階段 | 在call execution階段 |
用途 | 排他模式: 使用在父和子控制程式碼上 共享模式: 使用在所有的依賴關係物件控制程式碼上 NULL模式: 偵察不可用的狀態 避免再次重新定位(不是太理解) | 共享模式: 1、讀取資料的heaps 2、防止依賴物件不被修改 排他模式: 修改資料heaps |
鎖的使用 | 1、這裡說的物件控制程式碼就是一個資源結構 2、鎖結構被動態分配在共享池中 3、型別為LA。。LP | 1、這裡說的物件控制程式碼就是一個資源結構 2、鎖結構被動態分配在共享池中 3、型別為NA。。NP |
X表 | X$KGLLK | X$KGLPN |
綜述 | library cache lock也叫breakable parse lock,是用於控制在請求一個物件控制程式碼鎖的library cache的客戶端之間的併發性。就是說這個鎖就是防止其他的客戶端訪問同一個物件。這個所還能在library cache上定位一個物件。 | 這個library cache pin是管理cache的一致。pin一個物件能夠造成一個heap載入到記憶體中,(這裡有個疑問難道這個heap就不在記憶體嗎?應該不在,這樣這個heaps或許就可以理解為資料字典上的資料了),如果一個客戶端修改或者檢測一個物件,客戶端必須先請求一個library cache lock到相關的控制程式碼上,然後在pin合適的heap。 |
等待事件 | library cache lock | library cache pin |
等待週期3秒,PMON為1秒 | 等待週期3秒,PMON為1秒 | |
等待引數 | P1:物件控制程式碼地址 P2:鎖結構地址 P3:100*請求模式+namespace# | P1:物件控制程式碼地址 P2:pin地址 P3:100*請求模式+namespace# |
很少,除了pipes和序列 |
資料字典鎖還有一個型別是row cache locks。這個鎖是對應row cache來說的
row cache用途:
1、儲存的是資料字典上的行
2、是共享池的一部分
3、減少對於system表空間的物理IO次數
4、使用row cache lock來精確控制資料字典行上的鎖
這裡需要說明的是對於一個instance來說,都有一個隱含引數來確定row cache lock的多少,預設為100。_ROW_CACHE_INSTANCE_LOCKS
這個鎖也有一個等待事件與之對應:row cache lock
這個鎖等待週期是3秒,等待1000次之後就會放棄。
P1:cache id這個與v$rowcache上的cache#相對應
P2:保持的模式
P3:請求的模式
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/222350/viewspace-925875/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- library cache lock和library cache pin理解
- Library Cache Pin 及 Library Cache Lock分析
- library cache pin和library cache lock的診斷分析
- zt_如何平面解決library cache lock和library cache pin
- oracle library cache之library cache lock_library cache pin wait event釋義OracleAI
- 定位Library Cache pin,Library Cache lock等待的解決方法
- enq:Library cache lock/pin等待事件ENQ事件
- Library cache lock/pin詳解(轉)
- 【ASK_ORACLE】Library cache pin 與 library load lock的關係和區別Oracle
- zt_library cache pin和lock等待分析
- zt_如何使用event 10049分析定位library cache lock and library cache pin
- library cache pin/lock的解決辦法
- library cache lock和cursor: pin S wait on X等待AI
- 【等待事件】library cache pin事件
- 等待事件--library cache pin事件
- library cache pin等待分析
- library cache pin 等待事件事件
- library cache lock\pin的查詢與處理
- 0317Library Cache Pin/Lock Wait EventsAI
- sql version count引發cursor:pin s wait x及library cache latch library cache lockSQLAI
- 11G資料庫之library cache lock及library cache pin模擬結合hanganalyze定位資料庫
- oracle11g之v$libcache_locks處理library cache lock及library cache pinOracle
- Shared pool的library cache lock/pin及硬解析
- LIBRARY CACHE LOCK 等待事件事件
- Library cache pin/lock 在Oracle 10g的增強Oracle 10g
- latch:library cache lock等待事件事件
- oracle異常:library cache lockOracle
- 解決library cache pin等待事件事件
- library cache pin 阻塞程式查詢
- 查詢Library Cache Pin等待原因
- 【ASK_ORACLE】Library Cache概念篇(二)之Library Cache Pin的定義Oracle
- create index online與非online在library cache lock/pin方面的區別Index
- DBA手記(學習)-library cache pin
- library cache pin等待事件的模擬事件
- 分析解決因”library cache pin”等待
- library cache lock 阻塞程式查詢
- 常用定位library cache lock的方法
- LIBRARY CACHE LOCK WAITS AND NO BLOCKER FOUNDAIBloC