文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

AWR你好(3)—— ADDM的简单使用

2023-01-31 06:20

关注

 AWR你好(1)文中提到过,AWR、ASH和ADDM三者之间有些猫腻,那在对ASH简单做了介绍以后,那这次我们就来看ADDM.

ADDM(Automatic Database Diagnostic Monitor)数据库自动诊断监控(o小白自己翻译的啊……有点不太顺),在AWR生成了快照以后,oracle会自动调用ADDM,对最近的两个快照之间的状态进行分析,总结可能导致数据库性能问题的原因并生成报表。ADDM的主要依据就是database time,那什么是database time呢,也就是一个数据库请求到响应的时间。

那o小白自己的理解来说,就是ADDM自动把可能导致数据库响应时间最慢的事件给找了出来,从症状开始,比如哪句sql语句导致的响应时间变慢,然后分析根本原因,比如是因为db file scattered read,那下面o小白会给大家看个例子,是o小白自己做的ADDM的实验。

实验背景是o小白创建了一张表,addmtest,用于测试ADDM.

首先,有心的朋友会发现,昨天的那张脚本的图里有一个脚本叫ADDMRPT,那这个脚本就是生成ADDM表报的工具,那前面介绍过了ADDM是根据快照来进行自动分析的,那和前面的AWR脚本一样,指定起始快照和结束快照以后就可以生成ADDM报表了,唯一不同的是ADDM只支持txt模式,不支持HTML格式。实验步骤几乎完全一致,也就不贴出来了,不过这里一点需要注意的,o小白在做实验的时候碰到了最后结果是这样的情况。

 

图示的结果说NOT ENOUGH DATABASE TIME,而且从上面的Average Database Load和Database Time这两个都是0,也就是说,这两个快照之内数据库几乎没有任何负载,那ADDM自然也就没东西好分析了,o小白实验环境,自然是没有负载的,如果是生产库,那大概是至少30分钟收集一次吧,当然也要根据业务的情况进行调整。

那o小白就模拟一下负载,编写了一段脚本,循环往addmtest里面进行自插入(原来的内容是dba_tables),循环个20次。然后再次运行脚本,生成了报表结果如下。(太长了截一段)

 

那可以看到,ADDM诊断是SQL Tuning,发现了sql语句,然后找到对应的wait event,后面几个finding也是一样的内容, 因为o小白是循环插入的嘛~

那可以看到ADDM还是很好用的,特别对于新手来说,可以让oracle自动发现问题所在,但是所谓的工具也仅仅是工具而已,不可能那么智能,有的时候ADDM的分析诊断也并不准确,可能按照他所说的做反而会导致其他的问题,那只能提供一个参考,更多还是要看DBA的经验,而这种经验自然是要日积月累的,厚积薄发~

 

 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯