_use_adaptive_log_file_sync参数分析

本文深入探讨了Oracle数据库中Redo同步机制的变化,从Post/wait方式到引入Polling方式,以及如何通过隐含参数启用自动切换模式。详细解析了这两种方式的工作原理、响应速度差异以及在不同CPU负载条件下的应用策略。通过分析日志文件中的切换信息,展示了如何查询当前使用的Redo同步方式,并提供了优化策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在11gr2以前写日志缓冲区到文件方式是通过Post/wait方式,在11gr2开始增加了Polling的方式,在11.2.0.3以前默认还是采用Post/wait方式,
11.2.0.3开始默认是两种方式自动切换。它是通过隐含参数_use_adaptive_log_file_sync进行设置,当值为true时开启自动切换模式。
NAME                          VALUE   ISDEFAULT ISMOD      ISADJ
----------------------------- ------- --------- ---------- -----
_use_adaptive_log_file_sync   TRUE    TRUE      FALSE      FALSE


Post/wait:用户会话被动等待LGWR通知redo写入到log file完毕,这种方式响应速度比较快。
若cpu空闲时采用这种方式可以体验到更好的响应时间。
Polling:用户会话主动监测LGWR是否完成写入。这种方式比Post/wait方式响应速度慢,LGWR
不直接把完成的消息通知到很多用户会话,可以节约CPU资源。若cpu繁忙时采用这种方式可以
降低cpu资源的消耗。


在lgwr日志中可以看到切换的信息
Log file sync switching to polling
Log file sync switching to post/wait


查询当前log file sync的方式
SQL> select name,value from v$sysstat where name like 'redo sync%'
NAME                                                           VALUE
-------------------------------------------------- -----------------
redo synch time                                                 4644
redo synch time (usec)                                      46422779
redo synch writes                                                 15
redo synch long waits                                              7
redo synch poll writes                                             0
redo synch polls                                                   0



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值