oracle手工生成AWR报告方法记录
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定、问题SQL发现的重要手段。熟练掌握AWR报告,是做好开发、运维DBA工作的重要基本功。
AWR报告的原理是基于Oracle数据库的定时镜像功能。默认情况下,Oracle数据库后台进程会以一定间隔(一小时)收集系统当前状态镜像,并且保存在数据库中。生成AWR报告时,只需要指定进行分析的时间段(开始镜像编号和结束镜像编号),就可以生成该时间段的性能分析情况。AWR镜像保存在数据库中的时间为一个月左右。
目前Oracle10g之后,AWR报告取代了原先的Statspack报告成为一个主流性能分析报告。通常可以从OEM(Oracle Enterprise ManagerConsole)平台上生成查看AWR报告。在OEM中,使用图形化方法更加容易。本篇中介绍使用手工脚本方式生成AWR的方法,脱离OEM的限制。
1、 运行脚本
首先,准备一个目录作为AWR生成报告的路径。
[oracle@bspdev /]$ ls -l | greptest
drwxr-xr-x. 2oracle oinstall 4096 Jun 21 13:01test
[oracle@bspdev /]$ cdtest
启动sqlplus等开发工具,调用生成脚本。程序脚本一般保存在$ORACLE_HOME下的rdbms/admin中,名称为awrrpt.sql。
[oracle@bspdev test]$ sqlplus/nolog
SQL*Plus: Release11.2.0.1.0 Production onTue Jun 21 13:04:44 2011
Copyright (c) 1982, 2009,Oracle. Allrights reserved.
SQL> conn / as sysdba
Connected.
--调用脚本,生成文件
SQL>@?/rdbms/admin/awrrpt.sql
之后进入报告参数输入模块。
2、输入报告参数
之后,要持续输入一系列的报告参数。
ü 输入生成报告类型,目前AWR提供txt和html两种格式。需要确认生成格式,默认是html格式。
Current Instance
~~~~~~~~~~~~~~~~
DBId DBName InstNum Instance
----------- ------------ --------------------
4143510747 ORA11G 1ora11g
Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
Would you like an HTML report, or a plaintext report?
Enter 'html' for an HTMLreport, or 'text' for plain text
Defaults to'html'
ü 报告涉及天数范围
启动报告后,会显示生成实例的名称等基本信息。
默认情况下,AWR会将镜像信息保留一个月。手工生成的时候,需要确认生成AWR报告的时间范围。一般情况下,特别是生产环境下,我们通常设置1-7天也就够用了。
Instances in this Workload Repositoryschema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DBId InstNum DB Name Instance Host
------------ -------- ------------------------ ------------
* 4143510747 1ORA11G ora11g bspdev.local
domain
Using 4143510747 for databaseId
Using 1for instance number
Specify the number of days of snapshots tochoose from
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entering the number of days (n) will resultin the most recent
(n) days of snapshots beinglisted. Pressingwithout
specifying a number lists all completedsnapshots.
Enter value for num_days:
ü 输入开始和结束的snapshot编号
输入天数信息后,AWR生成代码会将天数范围内的snapshot镜像点列出,供输入选择。
Listing the last 3 days of CompletedSnapshots
Snap
Instance DBName SnapId SnapStarted Level
------------ ------------ --------------------------- -----
ora11g ORA11G 178920 Jun 2011 13:01 1
179020 Jun 2011 14:00 1
179120 Jun 2011 15:00 1
179220 Jun 2011 16:00 1
Begin Snapshot Id specified:1796
Enter value for end_snap:
ü 确定报告名称
最后就是确定生成报告的名称。一般采用默认的名称就可以了。
Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name isawrrpt_1_1796_1813.html. To use thisname,
press to continue, otherwise enter analternative.
Enter value forreport_name:
之后输出内容很多,此处不加以累述。最后提示报告生成成功。
Report written toawrrpt_1_1796_1813.html
于是,指定目录上可以看到相应的报告文件。
[oracle@bspdev test]$ ls-l
total 508
-rw-r--r--. 1 oracle oinstall 515262 Jun 2113:10 awrrpt_1_1796_1813.html
3、说明两个问题
首先,此处生成的html格式的报表。如果要求生成txt格式,就在生成过程中选择text格式报表。
Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
Would you like an HTML report, or a plaintext report?
Enter 'html' for an HTML report, or 'text'for plain text
Defaults to 'html'
Enter value for report_type:text
Type Specified: text
End of Report
Report written toawrrpt_1_1789_1800.txt
[oracle@bspdev test]$ ls-l
total 692
-rw-r--r--. 1 oracle oinstall 180601 Jun 2113:27 awrrpt_1_1789_1800.txt
-rw-r--r--. 1 oracle oinstall 515262 Jun 2113:10 awrrpt_1_1796_1813.html
第二个就是调用脚本的方式问题。调用时使用的sqlplus客户端可以在Oracle服务器本机上(远程登录),也可以在客户端机器本机上。笔者建议是在客户端本机上进行生成,这样可以避免报告文件来回拷贝的工作。但是最好要保证客户端版本与服务器版本相匹配。
4、结论
手工生成AWR报告,可以避免受到OEM的限制约束,而且灵活度高。本篇记录,权当备忘。
oracle手工生成AWR报告方法记录的更多相关文章
- 手工生成AWR报告方法记录
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...
- oracle手工生成AWR报告方法
AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...
- oracle生成AWR报告方法
2018-04-02 19:59:42 在10g 11g中AWR自动的每隔一小时进行一次数据采集并生成快照.下面是生成AWR报告的步骤: 1:使用oracle用户在数据库服务器上执行如下命令 sqlp ...
- oracle命令生成AWR报告
--命令生成AWR报告oracle@linux:~> sqlplus / as sysdba SQL*Plus: Release 11.1.0.7.0 - Production on Fri A ...
- 【oracle】生成AWR报告
[第一步]找到awrrpt.sql文件 [ora11g@vm-kvm11820-app ~]$ locate awrrpt.sql /DATA/opt/app/ora11g/product//rdbm ...
- 【练习】手工生成awr报告
①首先进入$ORACLE_HOME/rdbms/admin目录 [oracle@host02 ~]$ cd $ORACLE_HOME/rdbms/admin 该目录下 [oracle@host02 a ...
- Oracle——生成Awr报告
Oracle--生成Awr报告 AWR的概念 Oracle数据库是一个使用量很多的数据库,关于Oracle数据库的性能.Oracle10g以后,Oracle提供了一个性能检测的工具:AWR(Autom ...
- Oracle AWR 之 通过dbms_workload_repository.awr_report_text(html)函数在客户端生成AWR报告
1.概述 一般情况下,awr报告都是通过在oracle服务器的sqlplus窗口调用$ORACLE_HOME/rdbms/admin/awrrpt.sql脚本生成报告.方法如下: [oracle@lo ...
- Oracle 手工创建awr快照,获取报告
Oracle 的自动化工具都是通过后台的进程调用相关的函数实现,而Oracle也允许用户通过包来手工调用这些函数,显然这样增加了工具的安全性,也提高了可操作性,使得DBA可以更灵活的使用这些函数来满足 ...
随机推荐
- svg param.js的大bug
在svg文件里定义控件,带参数,然后引用. 如果是 text 且没有为其它添加默认值,那么会报错. 即, <svg width="200" height="200& ...
- 洞见世界(1): 拉勾网大数据告诉你, 会计最高月薪达33k!
前言: 小李是个很有上进心的女孩, 老板让她了解下会计这个行业的薪资情况, 她不清楚怎么去做, 所以找了笔者, 当当当, 然后这一份薪资报告就出来了^_^.(小李为虚拟人物) by 璀璨者张健, 专 ...
- selenium chrome浏览器与chrome.driver的对应关系
看到网上基本没有最新的chromedriver与chrome的对应关系表,便兴起整理了一份如下,希望对大家有用: chromedriver版本 支持的Chrome版本 v2.34 v61-63 v2. ...
- PyQt5 QSerialPort子线程操作
环境: python3.6 pyqt5 只是简单的一个思路,请忽略脆弱的异常防护: # -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets im ...
- “百度杯”CTF比赛 九月场_SQLi
题目在i春秋ctf大本营 看网页源码提示: 这边是个大坑,访问login.php发现根本不存在注入点,看了wp才知道注入点在l0gin.php 尝试order by语句,发现3的时候页面发生变化,说明 ...
- 实验吧_天下武功唯快不破&让我进去(哈希长度拓展攻击)
天下武功唯快不破 第一反应就去抓包,看到返回包的header中有FLAG的值,base64解码后得到下图所示 这就要求我们在请求头中post相应key的值,我直接在burp中尝试了多次都没有用,想起来 ...
- [Codeforces 920E]Connected Components?
Description 题库链接 给你一个 \(n\) 个点 \(m\) 条边的无向图,求其补图的连通块个数及各个连通块大小. \(1\leq n,m\leq 200000\) Solution 参考 ...
- [Sdoi2009]Elaxia的路线
Description 最近,Elaxia和w**的关系特别好,他们很想整天在一起,但是大学的学习太紧张了,他们 必须合理地安排两个人在一起的时间.Elaxia和w**每天都要奔波于宿舍和实验室之间, ...
- [CEOI2008]order
Description 有N个工作,M种机器,每种机器你可以租或者买过来. 每个工作包括若干道工序,每道工序需要某种机器来完成,你可以通过购买或租用机器来完成. 现在给出这些参数,求最大利润 Solu ...
- poj2828 BuyTickets 线段树
Buy Tickets Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 17326 Accepted: 8601 Desc ...