zoukankan      html  css  js  c++  java
  • oracle AWR报告

    AWR( Automatic Workload Repository )报告是对oracle的性能评定以及发现问题SQL语句的重要手段。

        AWR报告的原理是基于oracle数据库的定时镜像功能。默认情况下,Oracle数据库后台进程会以一定间隔(一小时)收集系统当前状态镜像,并且保存在数据库中。生成AWR报告时,只需要指定进行分析的时间段(开始镜像编号和结束镜像编号),就可以生成该时间段的性能分析情况。AWR镜像保存在数据库中的时间为一个月左右。
     
        也可以手工生成一个快照:
         SQL>dbms_workload_repository.create_snapshot();
     
        手动生成AWR的步骤如下:
        1、登录oracle数据库
        2、进入你想要生成报告的目录 
           cd /test
        3、进入数据库
           sqlplus / as sysdba
        4、执行生成语句
           sql> @?/rdbms/admin/awrrpt.sql
        5、输入报告的格式
           sql> html 或 text
        6、输入AWR快照的查看天数(回车返回所有快照)
           sql> 10
        7、输入起始、结束的snap_id,这里需要注意的是,输入的起始和结束snap_id必须在一个组里(直观的来说就是在2个空行之间),否则会直接报错。
           sql> 17
           sql> 18
         8、输入报告的名称(回车试用默认名)
     
    另外还有报告ash和addm
     
    awr 与ash的最主要的区别在于:awr是平面的,全面的,ash是立体的,更侧重于session的event跟踪,由于业务量大的数据库的event wait是瞬息万变,awr很可能会监控不到,为了弥补这个不足,ash才可以对session的event进行跟踪。
    ash与addm的区别在于:addm偶重于基于对当据库当前状态的分析,对存在的问题提供指导性的意见,可以说ash,addm是awr的补充,awr全面地收集数据库的状态,但ash/addm是侧重要对收集的数据进行分析,并提供一些有益的建议。 
     

                     sql> @?/dbms/admin/addmrpt.sql

    一.生成AWR报告

    复制代码
    [ractest@sun880-1 /u01/app/oracle/orahome/rdbms/admin]$ cd $ORACLE_HOME/rdbms/admin
    [ractest@sun880-1 /u01/app/oracle/orahome/rdbms/admin]$ sqlplus / as sysdba
    SQL*Plus: Release 10.2.0.4.0 - Production on Sun Jan 27 20:47:38 2008
    Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
    With the Partitioning, Real Application Clusters, OLAP, Data Mining
    and Real Application Testing options
    SQL> @awrrpt
    ......
    //根据Oracle提示生成报告......
    复制代码

     注:报告生成在$ORACLE_HOME/rdbms/admin/目录下。

    二.修改awr的默认设置

    //半小时采集一次,采集信息保存3天。
    SQL>exec dbms_workload_repository.modify_snapshot_settings (interval=>30,retention =>3*24*60);

    三.关闭AWR自动收集

    SQL>exec dbms_workload_repository.modify_snapshot_settings (interval=>0,retention =>24*60);

    :10g默认是自动开启awr信息收集的,会对系统有一定的影响(很小);如果要关闭awr信息收集,只需设置interval参数为0即可。但interval设0后,AWR报告无法生成。

    实验环境:

    操作系统win7 旗舰版 64bit

    数据库Oracle 11G R2 64bit

     

    1步:登陆sqlplus

    C:UsersAdministrator>sqlplus / as sysdba

     

    2步:跑脚本

    SQL> @D:softoracleproduct11.2.0dbhome_1RDBMSADMINawrrpt.sql

    3步:设置报告采集条件

    设置生成几天前的记录,如果设置1,则从今天00:00开始,如果设置为2,则从昨天00:00开始,缺省值为7,下面使用缺省值,回车到下一步。

    设置快照的起始id,如下:

    特别说明,对于AWR的命名可以自行命名,如下采用缺省值,直接点击回车。

    如下图,AWR报告生成成功。

    到指定路径下(一般生成的报告会默认存储在系统用户目录下)找到AWR报告即可查看了。

     

    至此,关于生成AWR报告介绍完毕(Linux下方法相同)

  • 相关阅读:
    使用Myeclipse + SVN + TaoCode 免费实现项目版本控制的详细教程
    国内的代码托管服务
    国内可用的SVN和Git代码托管网站汇总
    需求调研与分析流程
    如何做好新项目的需求调研?(一)
    如何进行有效的需求调研
    weblogic和tomcat
    同步变量也是变量
    并发编程的三个管理
    机器学习
  • 原文地址:https://www.cnblogs.com/bolang100/p/6542627.html
Copyright © 2011-2022 走看看