1、概述

一般情况下,awr报告都是通过在oracle服务器的sqlplus窗口调用$ORACLE_HOME/rdbms/admin/awrrpt.sql脚本生成报告。方法如下:

[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 15 17:21:54 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> @?/rdbms/admin/awrrpt.sql --其中?为ORACLE_HOME目录简写

2、条件

在客户端通过dbms_workload_repository.awr_report_text/html函数来生成awr报告一般适用于无法通过操作系统远程登录到oracle服务器的情况下,生成awr报告需要登录用户具有dba权限或相应权限并且可以通过客户端登录到远程oracle服务器。

3、dbms_workload_repository.awr_report_text/html方法介绍

1)dbms_workload_repository.awr_report_html(l_dbid     => 1431923185,  --数据库dbid

l_inst_num => 1,      --数据库实例id(单实例一般为1)

l_bid      => 623,    --开始快照号

l_eid      => 624 )  --结束快照号

2)dbms_workload_repository.awr_report_text(l_dbid     => 1431923185,  --数据库dbid

l_inst_num => 1,      --数据库实例id(单实例一般为1)

l_bid      => 623,    --开始快照号

l_eid      => 624 )  --结束快照号

4、pl/sql developer上生成awr报告的实现方法

1)根据步骤3的方法说明,在相应权限满足条件下,我们要在pl/sql developer上生成awr报告需要取得如下几个参数值:dbid、instance_number、开始快照号,结束快照号。

2)取得数据库dbid值,可以通过v$database视图取得,如下:

SQL> select dbid from v$database;

DBID

----------

1431923185

3)取得instance_number可以通过v$instance视图获得,如下:

SQL> select instance_number from v$instance;

INSTANCE_NUMBER

---------------------------------

1

4)取得“开始快照号”和“结束快照号”可以通过dba_hist_snatshop视图获得,如下:

select t.snap_id as 快照id,

t.dbid as dbid,

t.instance_number as instance_number,

to_char(t.begin_interval_time, 'yyyy-mm-dd hh24:mi:ss') "快照开始时间",

to_char(t.end_interval_time, 'yyyy-mm-dd hh24:mi:ss') as "快照结束时间"

from dba_hist_snapshot t

order by snap_id;

快照id            dbid           instance_number               快照开始时间              快照结束时间

-------------    ------------- --------------------------- -------------------------- ---------------------------

416 1431923185 1 2016-03-06 22:00:11 2016-03-06 23:00:13

417 1431923185 1 2016-03-06 23:00:13 2016-03-07 00:00:16

418 1431923185 1 2016-03-07 00:00:16 2016-03-07 01:00:18

419 1431923185 1 2016-03-07 01:00:18 2016-03-07 02:00:21

420 1431923185 1 2016-03-07 02:00:21 2016-03-07 03:00:23

421 1431923185 1 2016-03-07 03:00:23 2016-03-07 04:00:25

422 1431923185 1 2016-03-07 04:00:25 2016-03-07 05:00:28

423 1431923185 1 2016-03-07 05:00:28 2016-03-07 06:00:30

424 1431923185 1 2016-03-07 06:00:30 2016-03-07 07:00:32

425 1431923185 1 2016-03-07 07:00:32 2016-03-07 08:00:35

至此,我们已经取得了客户端生成awr报告的所有参数值,接下来我们就可以通过运行函数生成awr报告了。

5)执行存储过程生成awr报告(取快照号418为开始快照号,419为结束快照号):

脚本:

select output

from table(dbms_workload_repository.awr_report_html(l_dbid     => 1431923185,

l_inst_num => 1,

l_bid      => 418,

l_eid      => 419));

结果如下:

将以上结果复制出来,赞贴到txt文档下保存退出后,修改文本文档扩展名为html:

保存后,双击打开即得到awr报告。

附加:

dbms_workload_repository.awr_report_text函数生成的报告直接粘贴到txt文档即可,不需要修改扩展名。

Oracle AWR 之 通过dbms_workload_repository.awr_report_text(html)函数在客户端生成AWR报告的更多相关文章

  1. oracle rac自动生成awr

    cat awr.sql ######EXEC P_AWR_REPORT('201604251000', '201604251100', 'D_OUTPUT', '', FALSE); FALSE为ra ...

  2. ORACLE AWR概述及生成AWR报告

    1.Overview of the Automatic Workload Repository The Automatic Workload Repository (AWR) collects, pr ...

  3. Oracle 每天自动生成AWR报告

    经验丰富的老员工希望能够每天为数据库生成1个AWR报告,以便于后期分析数据库的性能变化,手动生成太麻烦,查了一下资料,发现可以自动生成,过程如下. 数据库环境:11gR2 RAC(双节点) AWR报告 ...

  4. oracle中如何生成awr报告

    oracle中如何生成awr报告   1.进入数据库 sqlplus / as sysdba 2.查看用户 show parameter db_name 3.开始压测后执行 exec DBMS_WOR ...

  5. Oracle——生成Awr报告

    Oracle--生成Awr报告 AWR的概念 Oracle数据库是一个使用量很多的数据库,关于Oracle数据库的性能.Oracle10g以后,Oracle提供了一个性能检测的工具:AWR(Autom ...

  6. Oracle生成awr报告操作步骤介绍

    AWR全称Automatic Workload Repository,自动负载信息库,是Oracle 10g版本后推出的一种性能收集和分析工具,提供了一个时间段内整个系统的报表数据.通过AWR报告,可 ...

  7. Oracle数据库之PL/SQL过程与函数

    Oracle数据库之PL/SQL过程与函数 PL/SQL块分为匿名块与命名块,命名块又包含子程序.包和触发器. 过程和函数统称为PL/SQL子程序,我们可以将商业逻辑.企业规则写成过程或函数保存到数据 ...

  8. oracle手工生成AWR报告方法记录

    AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...

  9. oracle生成AWR报告方法

    2018-04-02 19:59:42 在10g 11g中AWR自动的每隔一小时进行一次数据采集并生成快照.下面是生成AWR报告的步骤: 1:使用oracle用户在数据库服务器上执行如下命令 sqlp ...

随机推荐

  1. e657. 用直线和曲线绘制图形

    GeneralPath shape = new GeneralPath(); shape.moveTo(x, y); shape.lineTo(x, y); shape.quadTo(controlP ...

  2. ffmpeg avformat_open_input返回失败的解决办法

    用ffmpeg做的第一个程序,参考网上的代码,就出现了一些问题,其中avformat_open_input返回失败. 下面是我在网上收集到的失败信息的相关解决: /////////////////// ...

  3. 【Java集合的详细研究6】Java 数组

    Java 语言中提供的数组是用来存储固定大小的同类型元素. 声明数组变量 double[] myList; // 首选的方法 或 double myList[]; // 效果相同,但不是首选方法 创建 ...

  4. datepicker防手动输入

    在<input>中加入readonly="readonly"

  5. centos7,yum安装工具报错

    1.问题描述:yum安装gcc和其他的工具时一直报错: 2.问题解决: 网上看到有类似文章: No more mirrors to try. 得知这可能是错误的缓存源导致,直接两个命令解决: yum ...

  6. 帝国CMS7.2新增多图同时上传插件,上传多图效率更高

    原来上传多图文件,需要挨个选择文件,然后再点批量上传,比较麻烦.所以帝国CMS7.2新增了多图上传插件:为采用FLASH方式实现同时选择多个图片一起上传,提高多图上传效率. 帝国CMS多图上传插件特性 ...

  7. /etc/security/limits.conf

    ulimit 命令用来限制系统用户对 shell 资源的访问,但只是临时生效,想要永久生效需要配置 /etc/security/limits.conf 文件,语法及常见配置如下: [root@loca ...

  8. JavaScript的记忆函数真的可以提升性能吗?

      1 记忆函数是什么呢? 让函数记住曾经计算过的参数对应的结果 2 那我们为什么使用记忆函数呢? 答案是 避免重复计算 3 在工作中如何使用和实现函数记忆 ? 形成闭包,在闭包中维护一个哈希数组(其 ...

  9. 免费在线的web性能测试网站

    由于需要测试网站并发,所以去百度搜了搜,最开始找了个webkaka结果告知,已下线,好像是个很好的在线网站.现在只有网站速度诊断的http://pagespeed.webkaka.com/

  10. c++11——改进容器性能

    使用emplace_back就地构造 emplace_back能就地通过参数构造对象,不需要拷贝或者移动内存,相比push_back能更好的避免内存的拷贝和移动,使得容器插入元素的性能得到进一步提升. ...