返回顶部
首页 > 资讯 > 精选 >如何手工生成AWR运行期对比报告
  • 726
分享到

如何手工生成AWR运行期对比报告

2023-06-06 05:06:56 726人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关如何手工生成AWR运行期对比报告,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 AWR(Automatic Workload Repository)报告

这篇文章将为大家详细讲解有关如何手工生成AWR运行期对比报告,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

 

AWR(Automatic Workload Repository)报告是oracle 10g之后推出的重要性能诊断工具。AWR是作为Statspack报告的一种有力延伸。借助AWR,我们可以方便的对Oracle数据库的特定工作时间段进行性能分析评价,最终达到发现瓶颈调优的目标。

 

作为DBA,手工生成AWR报告是工作基本功之一。笔者在之前的《手工生成AWR报告记录》(Http://space.itpub.net/17203031/viewspace-700471)中,就已经详细介绍过如何在sqlplus工具下生成AWR报告。

 

1、从AWR到AWR Compare Period Report

 

AWR是一个产品体系,根据定时收集的系统运行数据,我们其实可以做的更多。在现在主流的运维管理和调优过程中,基线baseline的概念是一直贯穿始终。系统运行负载Baseline、关键SQL执行计划Baseline等等,反复出现。总之,所谓的Baseline,简单的说就是一套运行负载指标或者执行计划指标。当你认为系统出现问题的时候,可以将Baseline作为标准进行对比,发现问题所在。进一步的,可以将Baseline作为应急手段,强制使用应对生产(SQL Profile、SPM)。

 

我们一般的调优过程中,也的确需要这样的小工具。比如:业务高峰期和低谷期,数据库各方面指标有什么样显著的差异?进行调优之后,系统性能指标有何种方式变化?这种时候,生成两份AWR,看着对比的确是一种方法。但是,Oracle已经为我们提供出AWR Compare Period Report来方便实现这样的功能。

 

从原理上,AWR Compare Period Report不难理解。Oracle将各个时间snap的性能数据保存在SYSAUX表空间的一系列数据字典表中,只要经过合理的组织,compare report不是一件困难的事情。

 

2、手工生成报告

 

本文是一篇记录文章,依然采用手工sqlplus的方法生成报告。

 

ü        登录sqlplus,运行脚本

 

使用sqlplus,登录入指定系统。

 

 

D:\>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期一 3月 5 09:02:42 2012

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

 

SQL>(登录过程略……)

 

--调用脚本

SQL> @?/rdbms/admin/awrddrpt.sql

 

 

注意:在sqlplus中,?表示$ORACLE_HOME路径。指定的awrddrpt.sql脚本,也是确实在客户端本地的SQL执行脚本。如果使用如PL/SQL Developer等开发工具,请指定直接路径。

 

ü        输入基本报告类型

 

首先同AWR报告一样, Compare Period Report也存在TEXT和html两种格式支持。在创建过程中,我们需要进行选定。

 

 

Current Instance

~~~~~~~~~~~~~~~~

 

   DB Id       DB Id    DB Name      Inst Num Inst Num Instance

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

 2351142467  2351142467 NBSTEST             1        1 NBSTEST

 

Specify the Report Type

~~~~~~~~~~~~~~~~~~~~~~~

Would you like an HTML report, or a plain text report?

Enter 'html' for an HTML report, or 'text' for plain text

Defaults to 'html'

输入 report_type 的值:

 

Type Specified:                  html

 

 

ü        输入第一对比时间段项目

 

既然要做到对比,首先需要指定一个对比时间范围。这个过程同一般AWR报告相同,过程不予累述。

 

 

Instances in this Workload Repository schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

   DB Id     Inst Num DB Name      Instance     Host

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

* 2351142467        1 NBSTEST      NBSTEST      P550_05_LC

 

Database Id and Instance Number for the First Pair of Snapshots

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using 2351142467 for Database Id for the first pair of snapshots

Using          1 for Instance Number for the first pair of snapshots

 

 

Specify the number of days of snapshots to choose from

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Entering the number of days (n) will result in the most recent

(n) days of snapshots being listed.  Pressing <return> without

specifying a number lists all completed snapshots.

 

--输入对比时间范围

输入 num_days 的值:  3

 

 

之后,Oracle会列出三天范围的snap信息。

 

 

Listing the last 3 days of Completed Snapshots

                                                        Snap

Instance     DB Name        Snap Id    Snap Started    Level

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

NBSTEST      NBSTEST          10251 03 3月  2012 00:00     1

                              10252 03 3月  2012 01:00     1

(篇幅原因,省略部分……)

                              10305 05 3月  2012 06:00     1

 

                                                        Snap

Instance     DB Name        Snap Id    Snap Started    Level

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

NBSTEST      NBSTEST          10306 05 3月  2012 07:00     1

                              10307 05 3月  2012 08:00     1

                              10308 05 3月  2012 09:00     1

 

 

Specify the First Pair of Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入 begin_snap 的值:

 

--指定时间片

Specify the First Pair of Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入 begin_snap 的值:  10296

First Begin Snapshot Id specified: 10296

 

输入 end_snap 的值:  10298

 

 

设定了开始和结束时间snap,作为第一个时间。

 

ü        输入第二对比时间段项目

 

第二报告时间snap信息基本相同,不予累述。

 

 

Instances in this Workload Repository schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   DB Id     Inst Num DB Name      Instance     Host

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

* 2351142467        1 NBSTEST      NBSTEST      P550_05_LC

 

Database Id and Instance Number for the Second Pair of Snapshots

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using 2351142467 for Database Id for the second pair of snapshots

Using          1 for Instance Number for the second pair of snapshots

 

Specify the number of days of snapshots to choose from

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Entering the number of days (n) will result in the most recent

(n) days of snapshots being listed.  Pressing <return> without

specifying a number lists all completed snapshots.

 

输入 num_days2 的值:

 

输入 num_days2 的值:  1

 

Listing the last day's Completed Snapshots

                                                        Snap

Instance     DB Name        Snap Id    Snap Started    Level

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

NBSTEST      NBSTEST          10299 05 3月  2012 00:00     1

 (篇幅原因,省略……)

                              10306 05 3月  2012 07:00     1

                              10307 05 3月  2012 08:00     1

                              10308 05 3月  2012 09:00     1

 

 

 

Specify the Second Pair of Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入 begin_snap2 的值:

--输入时间片

 

Specify the Second Pair of Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入 begin_snap2 的值:  10306

Second Begin Snapshot Id specified: 10306

 

输入 end_snap2 的值:  10308

 

 

ü        指定生成报告名称,生成报告

 

 

Specify the Report Name

~~~~~~~~~~~~~~~~~~~~~~~

The default report file name is awrdiff_1_10296_1_10306.html  To use this name,

press <return> to continue, otherwise enter an alternative.

 

输入 report_name 的值: --使用默认名称,保持为空

Using the report name awrdiff_1_10296_1_10306.html

 

 

<br /><a class="awr" href="#top">Back to Top</a><p />

<p />

</body></html>

Report written to awrdiff_1_10296_1_10306.html

 

 

在目录上,我们就可以发现我们生成的报告文件。

 

 

3、报告内容粗览

 

与AWR报告不同,Compare Period Report强调对比。在所有的项目中,均以第一个和第二个进行对比,并且列出差异值。这对于我们进行负载对比等操作,有很多好处。

可以方便的让我们进行性能对比和调优前后对比。

 

4、结论

 

AWR报告以及其衍生产品,是我们进行性能调优、问题发现的重要工具武器。用好这些工具,是我们完成工作、履行责任和前进的重要前提。AWR Compare Period Report在进行基线对比和调优效果对比时,是非常方便的工具。

 

关于如何手工生成AWR运行期对比报告就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 如何手工生成AWR运行期对比报告

本文链接: https://lsjlt.com/news/246155.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何手工生成AWR运行期对比报告
    这篇文章将为大家详细讲解有关如何手工生成AWR运行期对比报告,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 AWR(Automatic Workload Repository)报告...
    99+
    2023-06-06
  • 手工生成AWR报告的方法是什么
    手工生成AWR报告的方法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。本篇文章给大家分享的是有关手工生成AWR报告的方法是什么,小编觉得挺实用的,因此分享给大家学习,...
    99+
    2023-06-06
  • 如何使用awrrpt.sql 生成AWR报告
    本篇内容主要讲解“如何使用awrrpt.sql 生成AWR报告”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用awrrpt.sql 生成AWR报告”吧!使...
    99+
    2024-04-02
  • 如何生成Linux运行时间报告的Bash脚本
    这篇文章主要介绍了如何生成Linux运行时间报告的Bash脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是 uptime 命令uptime 命令将告诉你系统已经运行了...
    99+
    2023-06-16
  • 在Hive中如何进行数据分析和生成报告
    在Hive中进行数据分析和生成报告需要按照以下步骤进行: 准备数据:首先需要从数据源(比如HDFS、S3等)中加载数据到Hive...
    99+
    2024-04-02
  • 如何在PHP中进行数据可视化和报告生成?
    在Web应用程序和商业软件中,数据可视化和报告生成是必不可少的功能。它们帮助人们更好地理解和分析数据,以便做出更好的决策。PHP是一种广泛使用的编程语言,它提供了多种库和工具,使得数据可视化和报告生成变得更加简单和高效。本文将介绍如何在PH...
    99+
    2023-05-21
    数据分析 PHP数据可视化 报告生成
  • 大数据Atlas如何进行数据可视化和报告生成
    大数据Atlas可以通过以下方法进行数据可视化和报告生成: 数据可视化工具:大数据Atlas可以使用各种数据可视化工具,如Tabl...
    99+
    2024-03-11
    Atlas
  • Nagios的监控数据如何进行可视化和报告生成
    Nagios提供了一些方法来可视化监控数据和生成报告。以下是一些常用的方法: Nagios图形用户界面(GUI):Nagios自...
    99+
    2024-03-11
    Nagios
  • 如何导出Graylog中的日志数据进行分析和报告生成
    要导出Graylog中的日志数据进行分析和报告生成,可以按照以下步骤操作: 登录到Graylog的Web界面。 在Graylog的...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作