latch: cache buffers chains 阻塞 buffer busy waits
生活随笔
收集整理的這篇文章主要介紹了
latch: cache buffers chains 阻塞 buffer busy waits
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
os: centos 7.4
db: oracle 11.2.0.4
版本
# cat /etc/centos-release CentOS Linux release 7.4.1708 (Core) # # su - oracle Last login: Tue Jan 21 03:40:05 CST 2020 on pts/0 $ sqlplus / as sysdba;SQL*Plus: Release 11.2.0.4.0 Production on Mon Feb 3 10:29:09 2020Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing optionsSQL> set lines 300; SQL> set pages 300; SQL> SQL> select * from v$version;BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production PL/SQL Release 11.2.0.4.0 - Production CORE 11.2.0.4.0 Production TNS for Linux: Version 11.2.0.4.0 - Production NLSRTL Version 11.2.0.4.0 - ProductionSQL>latch:cache buffers chains
當一個數據塊讀入到sga中時,該塊的塊頭(buffer header)會放置在一個hash bucket的鏈表(hash chain)中。該內存結構由一系列cache buffers chains子latch保護(又名hash latch或者cbc latch)。對Buffer cache中的塊,要select或者update、insert,delete等,都得先獲得cache buffers chains子latch,以保證對chain的排他訪問。若在過程中發生爭用,就會等待latch:cache buffers chains事件。
在以下場景容易出現該事件
可以通過將普通表調整成分區表,普通索引調整為分區索引的方法去嘗試解決。
buffer busy waits
當一個會話獲取數 buffer cache 中一個數據塊時,但是 buffer 處于繁忙狀態,無法獲取,
主要原因為
可以將普通表做成分區表,將定期將索引刪除并重建,調整表和索引pctfree參數
參考:
總結
以上是生活随笔為你收集整理的latch: cache buffers chains 阻塞 buffer busy waits的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小诗句集萃十四
- 下一篇: 微信朋友圈点赞测试点【杭州多测师】【杭州