首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 冲浪宝典 > 网络资源 > Oracle10g的AWR性能优化工具介绍
【标  题】:Oracle10g的AWR性能优化工具介绍
【关键字】:Oracle10g,AWR
【来  源】:http://blog.csdn.net/guitarcat/archive/2006/07/13/913120.aspx

Oracle10g的AWR性能优化工具介绍

AWR(Automatic Workload Repository)Oracle 10g新提供的收集数据库统计信息的工具。它主要包括AWR内存区, 历史数据存储文件和ASH等部件。

AWR报告的主要内容包括以下几部分,

前言部分: 这是AWR报告的第一段,用于描述环境包括数据库名,数据库版本,是否为RAC节点, 快照报告的采集时间等。

综述部分: 包含等待事件段,Load Profile,实例效率统计段,Shared Pool统计段,Cache Size, 其中最重要的是等待事件段, 它告诉我们在快照时间内数据库遇到哪些性能瓶颈,它们将是性能调整或问题诊断的主要候选对象。以下Top Time Event数据摘自我的数据库产生的AWR报告。

 

Event

Waits

Time(s)

Avg Wait(ms)

% Total Call Time

Wait Class

CPU time

 

17,306

 

99.6

 

db file scattered read

19,469,037

4,448

0

25.6

User I/O

log file parallel write

492,258

221

0

1.3

System I/O

log file sync

253,519

143

1

.8

Commit

read by other session

421,942

73

0

.4

User I/O

 

报告显示”db file scattered read”是这个快照时间内最重要的等待事件,这种等待是由于会话在等待一个” multiblock IO”的完成, 通常这是由于在大表上执行全表扫描或索引快速扫描引起。接下来可以查看哪些SQL执行这些查询,查询操作集中在哪些表上,检查SQL PLAN看是否使用了索引。

SQL部分:无效的SQL语句是性能不好的主要原因,这部分对这段时间区间内的SQL按照执行时间,逻辑读,磁盘读等指标进行了分类和排序,STATSPACK不同的是,AWR报告中可以直接查到该SQL的文本和发送请求的客户端进程信息,极大的提高了SQL分析的效率。

实例活动统计部分:这部分是快照期间,对实例的各个内部模块的活动和各种资源使用情况的统计,主要包括CPU使用情况,SQL*Net消息,链接的行存取和PGA使用情况。

段统计部分:告诉哪些段(包括表和索引)在快照期间经历最高的磁盘读操作,这些信息可以帮助我们决定是否需要重建索引,或对段进行分区来减少发生在这些数据文件上的I/O

 

AWR地一些常用操作主要包括:

修改快照的收集和保存时间,创建Baseline,导出并迁移AWR数据。下面介绍一下这些功能使用方法。

默认情况下AWR每隔1小时自动收集一个系统负载快照,并且此快照默认保存一周。但Oracle10g 提供以下命令可以修改快照收集时间间隔和保存时间。

execute dbms_workload_repository.modify_snapshot_settings(interval => 120,retention => 20160);

上述命令修改快照的收集间隔为2小时,保存时间为两周。

可以为AWR数据创建baseline, 保存这些数据用于将来分析和比较。具体命令如下,

execute dbms_workload_repository.create_baseline (start_snap_id =>1, end_snap_id =>100, baseline_name => 'baseline name', dbid => yourdbid);

可以将AWR数据导出并迁移到其它数据库以便于以后分析。Oracle10g Release2提供两个新工具来完成导出和迁移。AWR数据的工作。

DBMS_SWRF_INTERNAL.AWR_EXTRACT用来导出数据,其使用方法如下,

Begin

     DBMS_SWRF_INTERNAL.AWR_EXTRACT (

       dmpfile   => 'awr_data.dmp',

       dmpdir    => 'TMP_DIR',

       bid       => 302,

       eid       => 305);

end;

其中,dmpfile参数用于指定将要导出的AWR数据文件的名字,dmpdir是指定存放导出文件的目录路径,bid是起始快照编号,eid是结束快照编号。

DBMS_SWRF_INTERNAL用来迁移AWR数据文件到其他数据库。导入AWR数据的过程分为两个步骤,首先使用DBMS_SWRF_INTERNAL.AWR_LOAD方法把数据导入到一个临时模式中,本例是AWR_TEST(也可以自己定义名称),具体方法如下,

begin

    DBMS_SWRF_INTERNAL.AWR_LOAD (

       SCHNAME => 'AWR_TEST',

       dmpfile => 'awr_data',

       dmpdir =>  'TMP_DIR');

end;

接下来把需要把AWR数据转移到SYS模式中,操作方法如下,

exec DBMS_SWRF_INTERNAL.MOVE_TO_AWR (SCHNAME => 'TEST');这样AWR数据的导入工作已经完成,现在可以使用这种方法建立一个专门存放AWR数据的数据库,用于集中管理和分析多个数据库实例的性能统计数据。 

AWR工具的功能强大,内容也很多,我只是抛砖引玉,各位看客请积极回帖,一起讨论并提高。               

 

备份事务日志的存储过程:【上一篇】
Visual Basic中防止用户编辑文本框控件中的内容:【下一篇】
【相关文章】
  • oracle10g中的asm的配置
  • Oracle10g数据库优化实用心得小结(zz)
  • FC5下的Oracle10g下点滴之2006/07/02
  • 本周技术关注:Oracle10G、MSSQL2005、MYSQL5: CLuster、Replication、Snapshot
  • FC5下的Oracle10g安装
  • Oracle10g 管理系统全局区(SGA)
  • oracle10gSQL*PLUS的一些特性(转)
  • 熬了整整一周,终于把oracle10g的RAC搞好了 王日友写
  • Oracle10g闪回恢复区详解
  • 熬了整整一周,终于把oracle10g的RAC搞好了
  • 【随机文章】
  • 日记 [2006年05月08日] Linux 的 常 用 网 络 命 令
  • 位处理表达式
  • 说说大型高并发高负载网站的系统架构
  • 猛然间,自己已经过了24岁了
  • 新浪新反垃圾系统说明
  • Oracle的db_name和instance_name
  • windows 2003 服务器群集
  • RH253(Red Hat Linux)网络及安全管理课程
  • VM使用教程
  • 解决fedora下firefox 升级后不能连接https的问题
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.