作者简介
孙显鹏,Oracle十年从业经验,拥有11Gocp认证,精通内部原理,擅长调优,解决疑难问题,致力于帮助客户解决生产过程过出现的性能问题,提高生产效率!爱好书法!
现象通过分析故障时间段的AWR报告以及平时的AWR报告,发现故障时间段数据库出现大量的IO类等待,IO等待最为严重的等待为LOGFILESYNC,该事件为日志同步,平均等待时间为MS,ORACLE建议值为20MS以下,很显然该等待非常异常。我们首先处理日志同步等待问题。
相关AWR报告信息年1月15日故障时AWR报告的TOP等待信息如下:
年1月15日非高峰期AWR报告的TOP信息如下:
故障时间段的日志后台写进程信息:
用户提交频率信息:
综合上面的信息可以看到logfilesync平均等待时间非常高,ORACLE建议该平均等待时间小于20ms,故障时期该等待平均时间为ms,但是真正的写事件logfileparallelwrite平均等待时间只有10ms,另外用户事每次调用事务提交频率为33符合标准值,也就是日志写正常,事务提交频率正常,那么再结合11.2.0.3版本就可以判断该问题为自适应日志写导致,查询自适应log是否开启:
_use_adaptive_log_file_sync=true表示该功能开启,开启状态表示后台log写进程不需要通知前台事物进程,前台进程自己定期检测log是否写入成功,没有成功继续等待,在高并发时该功能会导致大量的logfilesync等待,需要关闭该功能。
知识点:ORACLE从11G开始,为lgwr写日志引入了polling机制,而在以前只有post/wait机制。同时引入了一个隐含参数,”_use_adaptive_log_file_sync”,即在两个机制之间自适应的切换。在11.2.0.3以下,该参数的默认值为false,即只启用post/wait机制。从11.2.0.3开始,该参数的默认值为true,即Oracle会在post/wait机制和polling机制自适应。
Post/wait进制下,lgwr进程在写完logbuffer中的改变向量后,立刻通知待
在本期微课中,我们将为大家介绍Oracle数据库缓冲区告诉缓存的以下知识点:
1、存放从数据文件读取的数据库副本
2、实现异步IO
3、使用LRU算法管理内存块
视频时长:9分35秒
温馨提示:视频杀流量,请尽量在WiFi环境下学习。
本期讲师张凯强
企业数据库系统专家,精通Oracle、MSSQLServer、MySQL等企业常用数据库。微软SQLServer数据库方向资深讲师。在企业数据库系统的管理与开发,性能优化,商业智能,以及企业.NET应用系统的程序开发等方面有着丰富理论及实践经验。现为嘉为教育专职培训讲师。
微课介绍嘉为学领未来微课,每周免费定期更新:IT管理、IT基础架构、软件开发、基础办公学习视频,让您足不出户,与精英讲师面对面!
爱学习,就看学领未来微课!
学领未来学领未来,是嘉为旗下的免费学习资源平台,旨在为广大用户提供持续、免费、优质的IT学习资源。
嘉为,年成立,十六年来专注于IT咨询服务和培训,拥有嘉为科技、嘉为教育两大业务体系,我们立足长远,以专业和诚信赢得客户信赖,成为客户的IT战略合作伙伴。
嘉为教育:企业IT培训解决方案专家,中国开展时间最早、规模最大、获得国际授权最大的IT高级技术培训及管理培训机构之一,业务企业培训多个领域,是多家厂商在中国的金牌培训合作伙伴,致力于为企业客户提供一站式的企业培训解决方案。
嘉为科技:一流的信息化综合服务与解决方案提供商,Microsoft、阿里云、RedHat、Citrix等厂商的金牌合作伙伴;致力于提升客户的信息化水平与竞争力,助力客户的业务发展。
预览时标签不可点收录于话题#个上一篇下一篇