oracle AWR性能监控报告是怎样生成的?

    作者:课课家教育更新于: 2018-10-25 16:00:09

      目前相当一部分公司会用到Oracle,在做性能测试的时候,对数据库的监控很重要.数据库的性能分析可分为会话级和系统级:如果确定某个会话存在性能问题,最常见的分析方式是对这个会话做一个SQL_Trace或者10046事件,通过分析trace文件来定位问题所在。如果无法确定哪个会话性能有问题,就需要从实例级别来分析问题所在。

      awr是oracle10g下提供的一种性能收集和分析工具,它能够提供一个时间段内整个系统资源使用情况的报告。

      awr默认收集最近7天的采集信息,也可通过以下方法修改快照收集时间间隔信息。

      awr由运行在oracle的后台进程自动、定期收集数据库的性能数据并保存,每一个小时,awr都生成一次性能数据快照,为DBA提供某个时刻数据库性能分析的数据信息。

      执行$ORACLE_HOME/RDBMS/ADMIN/awrrpt.sql生成awr报告。

      awr报告要根据系统实际情况(OLAPorOLTP)来进行分析,例如对于一个OLTP系统,libraryhit和bufferhit应比较关注。而对于OLAP不甚重要。

      awr报告不需要全面阅读,全面阅读可能思路会更乱,如果性能问题由某个原因引起,那么会在报表的各个部分都会有相应呈现。

      在RAC结构的数据库里做性能分析,通常需要对每个实例做一个awr性能报告,原因是无法知道每个用户连接到哪个实例当中去。

      对于一个系统,需要多做几次awr报告,以便得到所有时间段的系统性能数据。在查看awr报告时,如果了解数据库业务,应该有针对性的看一些可能存在性能问题的部分,并结合业务的实际情况来判断;也可以从TOP5的等待事件触发,按照等待事件的类型,到相应的部分获取详细的信息来对系统性能问题作出判断。

      通过awr报告可以:

      1)查看系统的负载和繁忙程度;

      2)查看系统的瓶颈,发生的等待事件;

      3)查看可优化的sql;

      oracle性能分析入门学习中,遇到oracle数据库的性能问题,一般首要的步骤就是导出AWR的分析报告,awr报告是oracle自带的监控报告,会自带很多监控数据,接下来小编为大家介绍如何导出awr报告~~

      1.首先需要进入oracle用户,Linux命令:suoracle,可以看到从root用户改为oracle用户

     1.首先需要进入oracle用户,linux命令:suoracle,可以看到从root用户改为oracle用户

      2.然后进去sql命令行

      sqlplus/assysdba

    2.然后进去sql命令行    sqlplus/assysdba

      3.可以再连接,或者再测试一下

      conn/assysdba

     3.可以再连接,或者再测试一下    conn/assysdba

      4.进入oracle报告选项中

      @?/rdbms/admin/awrrpt.sql

     4.进入oracle报告选项中    @?/rdbms/admin/awrrpt.sql

      5.Entervalueforreport_type:这个显示的意思是打印一个报告是以什么格式打印的,要么输入html,要么输入text,如果直接默认回车,这里是html

      这里直接默认回车,也就是直接采用默认的html

      5.Entervalueforreport_type:这个显示的意思是打印一个报告是以什么格式打印的,要么输入html,要么输入text,如果直接默认回车,这里是html    这里直接默认回车,也就是直接采用默认的html

      6.Entervaluefornum_days:这里的提示是让我们输出几天的报告,如果写1就输出1天,如果2就是两天

     6.Entervaluefornum_days:这里的提示是让我们输出几天的报告,如果写1就输出1天,如果2就是两天

      7.Entervalueforbegin_snap:出入起始的快照ID,这里指的是打印出来的snapid,后面有snapstarted开始的时间

      输入一个起始的快照,输出一个结束的快照id(本处起始id位3739,结束id位3740,也就是从22:30-22:40,中间10分钟的间隔),这样就将两个时间段内的oracle报告输出

      (一般用法,性能测试时,先手工拍摄一张快照,或者调低自动快照的时间,然后执行压测脚本,再手工拍摄之类,取压测前后的快照id,这样既可导出压测期间的结果)

     输入一个起始的快照,输出一个结束的快照id(本处起始id位3739,结束id位3740,也就是从22:30-22:40,中间10分钟的间隔),这样就将两个时间段内的oracle报告输出    (一般用法,性能测试时,先手工拍摄一张快照,或者调低自动快照的时间,然后执行压测脚本,再手工拍摄之类,取压测前后的快照id,这样既可导出压测期间的结果)

      8.Entervalueforreport_name:输入一个报告的名字

      比如test.html,不输入就是默认的

     8.Entervalueforreport_name:输入一个报告的名字    比如test.html,不输入就是默认的

      9.再按exit退出命令行模式,就可以在该目录下生成一个目录报告

    9.再按exit退出命令行模式,就可以在该目录下生成一个目录报告

      把这个html下载下来,用浏览器打开即可看到awr测试报告!

      是不是很简单,先试试吧~~~~

      把这个html下载下来,用浏览器打开即可看到awr测试报告!    是不是很简单,先试试吧~~~~

      小编结语:

      更多内容尽在课课家教育.

课课家教育

未登录