目前相当一部分公司会用到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用户
2.然后进去sql命令行
sqlplus/assysdba
3.可以再连接,或者再测试一下
conn/assysdba
4.进入oracle报告选项中
@?/rdbms/admin/awrrpt.sql
5.Entervalueforreport_type:这个显示的意思是打印一个报告是以什么格式打印的,要么输入html,要么输入text,如果直接默认回车,这里是html
这里直接默认回车,也就是直接采用默认的html
6.Entervaluefornum_days:这里的提示是让我们输出几天的报告,如果写1就输出1天,如果2就是两天
7.Entervalueforbegin_snap:出入起始的快照ID,这里指的是打印出来的snapid,后面有snapstarted开始的时间
输入一个起始的快照,输出一个结束的快照id(本处起始id位3739,结束id位3740,也就是从22:30-22:40,中间10分钟的间隔),这样就将两个时间段内的oracle报告输出
(一般用法,性能测试时,先手工拍摄一张快照,或者调低自动快照的时间,然后执行压测脚本,再手工拍摄之类,取压测前后的快照id,这样既可导出压测期间的结果)
8.Entervalueforreport_name:输入一个报告的名字
比如test.html,不输入就是默认的
9.再按exit退出命令行模式,就可以在该目录下生成一个目录报告
把这个html下载下来,用浏览器打开即可看到awr测试报告!
是不是很简单,先试试吧~~~~
小编结语:
更多内容尽在课课家教育.
¥29.90
¥48.00¥180.00
¥48.00¥180.00
¥199.00
¥798.00
¥199.00