当前位置:首页 > 开发 > 数据库 > 正文

oracle moving window size与 AWR retention period关系

发表于: 2013-01-19   作者:daizj   来源:转载   浏览:
摘要: 转自: http://tomszrp.itpub.net/post/11835/494147 晚上在做11gR1的一个awrrpt报告时,顺便想调整一下AWR snapshot的保留时间,结果遇到了ORA-13541这样的错误.下面是这个问题的发生和解决过程. SQL> select * from v$version; BANNER -------------------
转自: http://tomszrp.itpub.net/post/11835/494147

晚上在做11gR1的一个awrrpt报告时,顺便想调整一下AWR snapshot的保留时间,结果遇到了ORA-13541这样的错误.下面是这个问题的发生和解决过程.

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production

TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

SQL>

检查当前系统的保留时间为8天,1小时采样一次.

SQL> select * from dba_hist_wr_control;
      DBID SNAP_INTERVAL         RETENTION              TOPNSQL
---------- --------------------- ---------------------- ----------
4096851118 +00000 01:00:00.0     +00008 00:00:00.0      DEFAULT

我想调整为7天,每隔30分钟采样一次.执行如下脚本

SQL> begin
  2        dbms_workload_repository.modify_snapshot_settings (
  3          interval => 30,
  4          retention => 10080,
  5          topnsql => 100
  6        );
  7  end;
  8  /
begin
*
第 1 行出现错误:
ORA-13541: 系统移动窗口基线大小 (691200) 大于保留时间 (604800)
ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 89
ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 137
ORA-06512: 在 line 2

结果遇到了这个错误.查询ORA-13541的错误信息如下

ORA-13541: system moving window baseline size (string) greater than retention (string) 
Cause:     The system moving window baseline size must be less than the retention setting. The specified window size
           or retention violate this. 
Action: Check the moving window baseline size or retention.

在看看上面的个数字基线大小 (691200) 和保留时间 (604800)

基线大小691200
SQL> select 691200/60/60/24 from dual;

691200/60/60/24
---------------
              8
是8天的时间

保留时间604800          
SQL> select 604800/60/24/60 from dual;

604800/60/24/60
---------------
              7

是7天,正是我要设置的时间

检查当前的移动窗口基线大小
SQL> SELECT dbid, baseline_name, baseline_type, moving_window_size from dba_hist_baseline;

      DBID BASELINE_NAME            BASELINE_TYPE MOVING_WINDOW_SIZE
---------- ------------------------ ------------- ------------------
4096851118 SYSTEM_MOVING_WINDOW     MOVING_WINDOW                  8

正是上面的8天对应的数字(8*60*60*24=691200).

知道了问题的原因,修改起来就容易了.调用如下过程修改移动窗口baseline size为7天
SQL> exec dbms_workload_repository.modify_baseline_window_size(7);

PL/SQL 过程已成功完成。

然后继续上面的修改操作

SQL> begin
  2        dbms_workload_repository.modify_snapshot_settings (
  3          interval => 30,
  4          retention => 7*24*60,
  5          topnsql => 100
  6        );
  7  end;
  8  /

PL/SQL 过程已成功完成。

SQL>
OK,修改成功了,再检查一下看看结果是不是正确

SQL> select * from dba_hist_wr_control;

      DBID SNAP_INTERVAL         RETENTION             TOPNSQL
---------- --------------------- --------------------- ----------
4096851118 +00000 00:30:00.0     +00007 00:00:00.0            100

SQL>
SQL> SELECT dbid, baseline_name, baseline_type, moving_window_size from dba_hist_baseline;

      DBID BASELINE_NAME           BASELINE_TYPE MOVING_WINDOW_SIZE
---------- ----------------------- ------------- ------------------
4096851118 SYSTEM_MOVING_WINDOW    MOVING_WINDOW                  7

SQL>

好了,到这里问题就解决了!

The window size must be set to a value that is equal to or less than the value of the AWR retention setting.

oracle moving window size与 AWR retention period关系

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
1.Load Profile Per Second(每秒) Per Transaction(每事务) Per Exec(每次执行) Per Call(每
最近在项目里发现自己两台机发包的时候,有一台收得比较慢,想捉个包来看看,以前只是简单看下捉包
今晚来分析一下awr报告,首先说一下什么是awr报告,它能给我们带来什么。 * 定义:awr报告是oracle
生成步骤: 1:登陆对应的数据库服务器 2:如果是Window,运行cmd,运行sqlplus username/password@服
首先说一下什么是awr报告,它能给我们带来什么。 * 定义:awr报告是oracle 10g下提供的一种性能收集
生成步骤: 1:登陆对应的数据库服务器 2:如果是Window,运行cmd,运行sqlplus username/password@服
AWR 基线 使用AWR 基线进行比较性能分析 • AWR 基线包含了“目标或参 考”时段的一组AWR 快照 •
原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明以下出处,否则追究版权法律责任
AWR:Automatic Workload Repository 是 10g 引入的一个重要组件,存贮着近期一段时间内数据库活动状
  有经验的DBA擅长于使用数据库的基线,来发现数据库里的潜在性能问题。当性能问题发生之前,数据
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号