Chinaunix首页 | 论坛 | 博客
  • 博客访问: 152540
  • 博文数量: 39
  • 博客积分: 825
  • 博客等级: 准尉
  • 技术积分: 955
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-25 14:05
文章分类

全部博文(39)

文章存档

2014年(4)

2013年(13)

2012年(22)

我的朋友

分类: Oracle

2013-01-03 20:06:06

/********************************************************************************************/
--1.配置awr一瞥

BEGIN
  dbms_workload_repository.modify_snapshot_settings(RETENTION => 11520, --保留周期 - 分钟
                                                    INTERVAL  => 60, --采样间隔 - 分钟
                                                    topnsql   => 'DEFAULT', --top N sql
                                                    dbid      => 1785327999);
END;
/

--查看配置信息
SELECT * FROM dba_hist_wr_control;
/*
DBID  SNAP_INTERVAL  RETENTION  TOPNSQL
1785327999  +00000 01:00:00.0 +00008 00:00:00.0 DEFAULT
*/



/********************************************************************************************/
--2.baseline在11g中新特性

_________________________________________________________________________
  1): baseline的作用

  创建baseline只记录了baseline所指定的快照ID,当维护awr的mmon进程在清除过期的快照时,
在baseline中的快照则不会被删除,除非到达当初创建时指定的expiration时间;当数据库做了
一段时间的调优后,awr可以用baseline保留的快照与当前系统的awr报比进行对比,对此你在准
备着手调整一个数据库实例前,应该手动创建一个baseline。

_________________________________________________________________________
  2): 手动创建与删除baseline 
  
--创建baseline

BEGIN
  dbms_workload_repository.create_baseline(start_snap_id => 148,
                                           end_snap_id   => 149,
                                           baseline_name => 'test_perf',
                                           dbid          => 1785327999,
                                           expiration    => 360); --过期时间(单位:天),如果过期则清除之。
END;
/

--删除baseline
BEGIN
  dbms_workload_repository.drop_baseline(baseline_name => 'test_perf',
                                         cascade       => TRUE, --是否级联删除awr数据
                                         dbid          => 1785327999);
END;
/

_________________________________________________________________________
  3): 11g中新增基于【系统移动窗口】的baseline
  
SELECT dhb.baseline_name,
       dhb.baseline_type,
       dhb.start_snap_id,
       dhb.end_snap_id,
       dhb.start_snap_time,
       dhb.end_snap_time,
       dhb.moving_window_size,
       dhb.creation_time
FROM   dba_hist_baseline dhb;
--SYSTEM_MOVING_WINDOW MOVING_WINDOW 147 147 28-12月-12 07.04.59.629 下午 28-12月-12 07.04.59.629 下午 8 2012/9/3 20:21:55

  基于【系统移动窗口】的baseline创建同期与awr保存周期必须一致,下面是一次
修改示例:
  
BEGIN
  dbms_workload_repository.modify_snapshot_settings(retention => 12960);   --分钟
  dbms_workload_repository.modify_baseline_window_size(window_size => 9);  --天
END;
/

--查看配置信息
SELECT * from dba_hist_baseline_metadata;
--1785327999 0 SYSTEM_MOVING_WINDOW MOVING_WINDOW 9 2012/9/3 20:21:55

_________________________________________________________________________
  4):基线模板
  
  按我的理解,这种功能只有在正常awr收集作业无法满足
特殊要求的情况下,人为参与awr收集的一个增强特性,其
实完全可以自己写crontab(运行awrrpt.sql)代替。  --个人观点,不妥处望请指出
  
BEGIN
  --一次性收集作业
  dbms_workload_repository.create_baseline_template(start_time    =>,  --起始时间段
                                                    end_time      =>,  --结束时间段
                                                    baseline_name =>,  --基线名
                                                    template_name =>,  --模板名
                                                    expiration    =>,  --过期时间
                                                    dbid          =>);  
  --周期性收集作业
  dbms_workload_repository.create_baseline_template(day_of_week          =>, 
                                                    hour_in_day          =>,  
                                                    duration             =>,
                                                    start_time           =>,
                                                    end_time             =>,
                                                    baseline_name_prefix =>,  --基线前缀(一个周期内可能收集多个基线)
                                                    template_name        =>,
                                                    expiration           =>,
                                                    dbid                 =>);
END;
/


  PS:几个新增视图

SELECT * from dba_hist_baseline_details;
SELECT * from dba_hist_baseline_template;

/********************************************************************************************/
--3.总结

  baseline即是所谓的基线,与软件周期中的基线管理有些共同的特点;但是awr中的基线,只是一个时间
点上数据库性能的一个快照点信息,所以何时使用基线还是依环境而论。

  所以个人建议,如果想对比历史性能指标信息,还是自己对awr做一定制化,将这些数据存放到一个类似
数据集市的库中,以备不时之须。
阅读(698) | 评论(0) | 转发(0) |
0

上一篇:位图索引研究

下一篇:addm新特性

给主人留下些什么吧!~~