主要参考文献:

http://343766868.blog.163.com/blog/static/48314056201110124513396/

概况

Oracle内部以一定的频率把系统关键的统计信息和负载情况存储起来,生成snapshot(快照),全部的snapshot存储在awr中。即automatic workload repository。

当发现数据库出现性能问题时。就能够抽取存储在awr中的snapshot信息,生成在指定时间段内(即你指定的snapshot所囊括的时间段)的awr报告。然后对报告进行分析。发现系统存在的问题。

首先说下快照的管理。

查看已生成快照列表信息

Select * from dba_hist_snapshot;

普通情况下。snapshot不须要手动管理,若有特殊须要,也能够进行手动生成和删除操作。

手动生成snapshot。

SQL>execdbms_workload_repository.create_snapshot();

手动删除snapshot。

SQL>exec dbms_workload_repository.dorp(low_snap_id=>1,high_snap_id=>2);

更改snapshot频率等參数。

数据库默认是每个小时进行一次snapshot生成操作,每个snapshot保留7天。

能够通过下面语句查询数据库当前的快照生成配置信息。

select * from dba_hist_wr_control;

若须要更改次默认參数,也能够使用

SQL>exec dbms_workload_repository.modify_snapshot_settings(interval=>60

Retention=>3*24*60

);

当中:

retention參数及保留时间。单位是min(分钟)。

若设置为0。则快照将永久保留。

若设置为null,则保留原设置。此參数的范围为1天---100年。

Interval參数为生成snapshot频率。单位是min(分钟)。若设置为0。则表示禁用手动和自己主动生成快照的功能。

若设置为null,则保留原设置。此參数的范围为10min---1年。

此外还有topnsql和dbid參数。topnsql表示要採集比較占资源的sql数量。

生成awr报告。

了解了快照之后。就能够利用snapshot生成awr报告。

自己主动生成是使用OEM中的查看awr相关项。手动生成时指运行oracle提供的运行脚本。

脚本位于$ORACLE_HOME/rdbms/admin/文件夹下,名字为awrrpt.sql。

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

就可以。生成的路径为你进入sqlplus前的当前文件夹。

所以若要把报告放在指定文件夹,可事先进入该文件夹。比方

Cd /tmp/awr/

然后在进入sqlplus,手动生成awr报告。

生成awr报后报告。分析左侧awr报告,这是一个大问题,它是一个更加困难的问题。以后慢慢说。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

生成awr报告的更多相关文章

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

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

  2. 自动生成AWR报告

    --自动生成AWR报告 -------------------2013/09/23   脚本代码:   #!/bin/bash   AWR_FORMAT=html NUM_DAYS=1   MAX_S ...

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

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

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

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

  5. Linux平台生成awr报告

    1.使用oracle用户登录应用服务器所使用的数据库所在的服务器 # su –oracle 2.输入env命令,查询出ORACLE_HOME 目录 3.然后进入$ORACLE_HOME/rdbms/a ...

  6. SHELL脚本学习-自动生成AWR报告

    自动生成AWR报告,每个小时生成一次. #编辑脚本:vim awr_auto.sh #oracle用户下执行 #!/bin/bash # 每个小时执行一次,自动生成AWR报告 source ~/.ba ...

  7. oracle生成AWR报告方法

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

  8. oracle中如何生成awr报告

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

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

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

随机推荐

  1. perl学习(4) 子程序

    子程序,类比c语言中的函数,在形式上个人认为最大的区别:没有形参 1.1.定义子程序 1.2.调用 #! /usr/bin/perl sub marine { $n += 1 ; print &quo ...

  2. Python转码问题的解决方法:ignore,replace,xmlcharrefreplace

    比如,若要将某个String对象s从gbk内码转换为UTF-8,可以如下操作 s.decode('gbk').encode('utf-8′) 可是,在实际开发中,我发现,这种办法经常会出现异常: Un ...

  3. poj 1731 Orders(暴力)

    题目链接:http://poj.org/problem?id=1731 思路分析:含有重复元素的全排列问题:元素个数为200个,采用暴力枚举法. 代码如下: #include <iostream ...

  4. Selenium2使用vncserver启动firefox

    web自动化测试使用Selenium2使用vncserver启动firefox 1st startup vncserver(e.g. vncserver :1). 2nd set DISPLAY(e. ...

  5. 编程算法 - 最长公共子序列(LCS) 代码(C)

    最长公共子序列(LCS) 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 给定两个字符串s,t, 求出这两个字符串最长的公共子序列的长度. 字符 ...

  6. puppet安装和使用

    puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描写叙述语言,可管理配置 文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称 ...

  7. NGUI HUDText

    今天使用HUDText的时候,发现须要如今场景里创建一个UI2dRoot;不然位置不对 或许应该创建一个prefab这样每一个场景都加入一个就可以. using UnityEngine;       ...

  8. 写一方法用来计算1+2+3+...n,其中n作为参数输入,返回值可以由方法名返回,也可以由参数返回

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. NHibernate变的简单

    前言 这篇文章出自于我尝试学习使用Nhiberbnate的挫败感.我发现好像Nhibernate全部的介绍材料不是很模糊就是太详细.我所需要的就是一个简单直接的教程,能让我尽快对NHibernate熟 ...

  10. redis的管理工具

    phpredisadmin工具 rdbtools管理工具 saltstack管理redis 通过codis完成redis管理 一:phpredisadmin工具:类似于mysqladmin管理mysq ...