去项目上自己生成的awr报告和生成过程,热烈欢迎大家拍砖

附件为自己生成的awr报告和生成过程,热烈欢迎大家拍砖

网络环境:应用和数据库在同一台服务器上,排除网络问题。检查网络问题可以用工具测试

 

 

数据库:oracle数据库 做awr报告

步骤:  sqlplus / as sysdba                 ---sysdba登录

           exec dbms_workload_repository.create_snapshot()  --生成当前时间快照

           @$oraclehome\RDBMS\ADMIN\awrrpt.sql  ---执行orcl服务安装目录下的awrrpt.sql

           Specify the Report Type : html       ---输入生成报告类型,目前AWR提供txt和html两种格式。需要确认生成                格 式,默认是html格式

       Enter value for num_days: 1          ---报告涉及天数范围,近几天的报告,回车后会把今天的报告序列列举下来,默认一小时一个报告

       Enter value for begin_snap: 1796     ---开始时间的编号

       Enter value for end_snap: 1813      ---结束时间的编号

       Enter value for report_name:d:\awr_20141030_1.html ---报告名称和生成地址

 

 

AWR报告分析:报告内容很大,包括对CPU  内存  IO 占用的分析结果

当时处理科工汇总效率问题时主要看的是SQL Statistics

发现SQL ordered by Elapsed Time中:某条sql执行次数带到18万次,太频繁,点开后面的sql执行分析 sql是查询单位的权限

 

 

堆栈:

tomcat,weblogic 的环境下 ctrl+pausebreak 可以打印功能执行中的堆栈信息

日志的堆栈信息中发现判断单位权限的dao层在大量频繁执行,正好应征了awr报告

可以用java命令jconsle.exe实时监控cpu  内存   线程 的情况

 

 

修改:利用缓存对权限查询进行优化

 


你可能感兴趣的:(oracle,堆栈,AWR)