DB BUFFER LRU 列表的latch等待

博客主要分析了DB BUFFER LRU列表的latch等待情况。一是进程载入内存、写入LRU列表时,需cache buffers lru chain latch;二是刷脏块、同步到物理文件时也需该latch,还列举了将脏缓冲区记录到文件的多种情况,如服务进程请求、执行特定工作等。


DB BUFFER LRU 列表的latch等待


总结出来如下两种情况会导致latch等待:


1. 载入内存,写入LRU列表

进程欲读取还没有装载到内存上的块时,通过查询LRU 列分配到所需空闲缓冲区,在此过程中需要cache buffers lru chain latch。


2. 刷脏块,同步到物理文件

数据库写入进程将脏缓冲区记录到文件上,查询LRU LIST,将相应缓冲区移动到FREE LIST的过程中,也要获得cache buffers lru chain latch。

在如下情况下将脏缓冲区记录到文件里:

2.1)session对应的服务进程为了获得空闲缓冲区,向DBWR 请求记录脏缓冲区时;

2.2)Oracle进程为执行Parallel Query 或 Backup,Truncate/Drop等工作,请求记录相关对象的脏缓冲区时; 

2.3)周期性或管理上的原因检查点(checkpointing)被执行时。

2.4)Oracle 为了保障将通过FAST_START_MTTR_TARGET(或LOG_CHECKPOINT_TIMEOUT)指定的时间的恢复,周期性执行检查点。

2.5)管理员执行检查点命令或根据日志文件切换,也会发生检查点。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25380026/viewspace-2646368/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25380026/viewspace-2646368/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值