ITPub博客

首页 > 数据库 > Oracle > DB BUFFER LRU 列表的latch等待

DB BUFFER LRU 列表的latch等待

原创 Oracle 作者:caohongfeng666 时间:2019-05-31 14:58:24 0 删除 编辑


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/,如需转载,请注明出处,否则将追究法律责任。

下一篇: MySQL的session过程
请登录后发表评论 登录
全部评论
曹老道

注册时间:2013-07-31

  • 博文量
    14
  • 访问量
    9737