redo buffer大小由参数log_buffer决定。 在redo buffer中的每条记录称为redo entire。 LGWR将redo buffer中的redo entire写到重做日志文件中,LGWR进程只有1个。 LGWR在下列情况下对重做日志文件进行写入 commit发生时, 每3秒 redo buffer 1/3满时 超过1M时 在DBWn写之前 如何查看redo buffer中已有多少个redo entire? v$sysstat的redo entire字段 如何查看再次请求redo buffer空间的次数 v$sysstat的redo buffer allocationn retire字段(越小越好) 当向redo buffer中添加信息,但空间不足时产生log buffer space event(应避免) 应避免日志组之间的切换耗费过多的时间,应避免一系列的log file switch事件。如果出现某种log file switch事件,可考虑增大logfile的容量。 还应避免LGWR等待DBWn完成检查点的情况,对应的等待事件为log file switch (checkpoint incomplete),可通过v$system_event查看该事件的相关情况,或在alter.log文件中检查“checkpoint not complete”。 应避免ARCn进程归档未完成造成LGWR等待的次数。对应等待事件log file switch (archiving needed) 批量插入时可考虑使用直接写方式减少redo的信息量。
总结
以上是编程之家为你收集整理的Oracle调优之redo相关全部内容,希望文章能够帮你解决Oracle调优之redo相关所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。