背景:

在使用cacti监控oracle数据库IO的时候发现每天晚上10点钟的时候oracle数据库读写明显增加,如下图所示:

对这个问题,后来查了一下是因为oracle在运行一个信息自动收集任务。oracle 11g中统计信息自动收集任务的名称是auto optimizer stats collection。11g中自动任务默认的执行时间窗口(oracle时间窗口介绍)为:

  • 周一到周五是晚上10点开始到2点结束
  • 周末是早上六点,持续20个小时。

1、查看自动收集任务及状态

select client_name,status from Dba_Autotask_Client where client_name='auto optimizer stats collection';

2、停止自动收集任务

--关闭信息自动收集任务
BEGINDBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto optimizer stats collection',operation => NULL, window_name => NULL);END;/PL/SQL procedure successfully completed.--再次查询
select client_name,status from Dba_Autotask_Client where client_name='auto optimizer stats collection';
CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  DISABLED

但是此时再查询DBA_ATUOTASK_TASK视图时,显示该任务状态还是ENABLED

select client_name,status from dba_autotask_task where client_name='auto optimizer stats collection';
CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED

Oracle给出的解释是在现在的版本中(11.1 to 11.2)一个client对应一个task,但是在将来的版本中会出现多个client会对应一个task,所以一个client被disabled了,不会改变task的状态。[ID 858852.1]

3、启动自动收集任务

 BEGINDBMS_AUTO_TASK_ADMIN.ENABLE(client_name => 'auto optimizer stats collection',operation => NULL, window_name => NULL);END;/
PL/SQL procedure successfully completed.
--再次查询select client_name,status from Dba_Autotask_Client where client_name='auto optimizer stats collection';
CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED

4、查看自动收集任务历史执行状态

SELECT client_name, window_name, jobs_created, jobs_started, jobs_completed FROM dba_autotask_client_history WHERE client_name like '%stats%';

 View Code

通过时间窗口名称可以看出是周几执行的,在时间窗口内创建了几次job,执行了几次job,当然可以加上window_start_time来查看具体执行的日期。

5、查看自动收集任务执行时间窗口

select WINDOW_NAME, WINDOW_NEXT_TIME , WINDOW_ACTIVE,OPTIMIZER_STATS from DBA_AUTOTASK_WINDOW_CLIENTS order by WINDOW_NEXT_TIME ;

       WINDOW_NAME    WINDOW_NEXT_TIME    WINDOW_ACTIVE    OPTIMIZER_STATS
1    THURSDAY_WINDOW    07-AUG-14 10.00.00.000000 PM +08:00    FALSE    ENABLED
2    FRIDAY_WINDOW    08-AUG-14 10.00.00.000000 PM +08:00    FALSE    ENABLED
3    SATURDAY_WINDOW    09-AUG-14 06.00.00.000000 AM +08:00    FALSE    ENABLED
4    SUNDAY_WINDOW    10-AUG-14 06.00.00.000000 AM +08:00    FALSE    ENABLED
5    MONDAY_WINDOW    11-AUG-14 10.00.00.000000 PM +08:00    FALSE    ENABLED
6    TUESDAY_WINDOW    12-AUG-14 10.00.00.000000 PM +08:00    FALSE    ENABLED
7    WEDNESDAY_WINDOW    13-AUG-14 10.00.00.000000 PM +08:00    FALSE    ENABLED

6、查询自动收集任务正在执行的JOB

select client_name, JOB_SCHEDULER_STATUS from DBA_AUTOTASK_CLIENT_JOB where client_name='auto optimizer stats collection';

这个查询没有结果也很正常,只有job正在运行时,该查询才有结果。

7、与时间窗口相关的视图
查询自动收集任务所属时间窗口组

select client_name,window_group from dba_autotask_client where client_name='auto optimizer stats collection';

       CLIENT_NAME    WINDOW_GROUP
1    auto optimizer stats collection    ORA$AT_WGRP_OS

查询自动收集任务所属时间窗口组详细信息

select * from dba_scheduler_window_groups where window_group_name='ORA$AT_WGRP_OS';

       WINDOW_GROUP_NAME    ENABLED    NUMBER_OF_WINDOWS    NEXT_START_DATE    COMMENTS
1    ORA$AT_WGRP_OS    TRUE    7    07-AUG-14 10.00.00.000000 PM +08:00    auto optimizer stats collection

查看自动收集任务所属时间窗口组包含的子时间窗口

select * from dba_scheduler_wingroup_members where window_group_name='ORA$AT_WGRP_OS';

       WINDOW_GROUP_NAME    WINDOW_NAME
1    ORA$AT_WGRP_OS    MONDAY_WINDOW
2    ORA$AT_WGRP_OS    TUESDAY_WINDOW
3    ORA$AT_WGRP_OS    WEDNESDAY_WINDOW
4    ORA$AT_WGRP_OS    THURSDAY_WINDOW
5    ORA$AT_WGRP_OS    FRIDAY_WINDOW
6    ORA$AT_WGRP_OS    SATURDAY_WINDOW
7    ORA$AT_WGRP_OS    SUNDAY_WINDOW

查看子时间窗口信息

select a.window_name,a.next_start_date,a.active from dba_scheduler_windows ainner join dba_scheduler_wingroup_members b on a.window_name = b.window_namewhere b.window_group_name='ORA$AT_WGRP_OS';

       WINDOW_NAME    NEXT_START_DATE    ACTIVE
1    MONDAY_WINDOW    11-AUG-14 10.00.00.000000 PM +08:00    FALSE
2    TUESDAY_WINDOW    12-AUG-14 10.00.00.000000 PM +08:00    FALSE
3    WEDNESDAY_WINDOW    13-AUG-14 10.00.00.000000 PM +08:00    FALSE
4    THURSDAY_WINDOW    07-AUG-14 10.00.00.000000 PM +08:00    FALSE
5    FRIDAY_WINDOW    08-AUG-14 10.00.00.000000 PM +08:00    FALSE
6    SATURDAY_WINDOW    09-AUG-14 06.00.00.000000 AM +08:00    FALSE
7    SUNDAY_WINDOW    10-AUG-14 06.00.00.000000 AM +08:00    FALSE

通过这个查询可以看出DBA_AUTOTASK_WINDOW_CLIENTS视图的信息其实和上面的结果一样。

总结一下统计信息自动收集任务运行的步骤:
首先是dba_autotask_task-->dba_autotask_client建立自动执行任务
再根据时间窗口及资源组建立自动执行作业
dba_autotask_client-->dba_scheduler_window_groups-->dba_scheduler_windows-->dba_scheduler_jobs
dba_autotask_client-->dba_scheduler_job_classes
相关视图:
dba_autotask_task
dba_autotask_client
dba_autotask_client_job
dba_autotask_window_clients
dba_autotask_client_history

dba_scheduler_jobs
dba_scheduler_job_classes
dba_scheduler_window_groups
dba_scheduler_windows
dba_scheduler_wingroup_members

自定义自动收集任务时间窗口:
How to use an own Maintenance Window for the Statistics Collection in 11g [ID 1300313.1]

MOS相关文档: FAQ: Automatic Statistics Collection [ID 1233203.1]

zhuan :http://www.cnblogs.com/xwdreamer/p/3897580.html

转载于:https://www.cnblogs.com/andy6/p/5979551.html

Oracle11g 统计信息——统计信息自动收集任务相关推荐

  1. 统计信息自动收集任务失效原因排查

    环境:Oracle 11.2.0.3 RAC 问题:统计信息自动收集任务失效原因排查 1.查看自动任务的状态 2.进一步查看其它信息 3.解决问题 1.查看自动任务的状态 查看自动任务的状态,确认是e ...

  2. oracle收集统计信息sql,Oracle自动统计信息的收集原理及实验

    从Oracle Database 10g开始,Oracle在建库后就默认创建了一个名为GATHER_STATS_JOB的定时任务,用于自动收集CBO的统计信息.这个自动任务默认情况下在工作日晚上10: ...

  3. 利用EVEREST Corporate Edition网络统计硬件配置信息

    相信不少在企业做网管的朋友们在进入公司不久,领导都会要求你将公司的电脑硬件设备都统计一遍,对于电脑台数比较多的企业,这还是个比较繁杂的工作量,因为手工一台台的去统计,那多麻烦啊. 在google.ba ...

  4. 进阶指令——wc指令【作用:统计文件内容信息(包含行数、单词数、字节数)】、date指令【作用:表示操作时间日期(读取、设置)】、cal指令【作用:用来操作日历的】、clear/ctrl + L指令

    6.wc指令 作用:统计文件内容信息(包含行数.单词数.字节数) 语法:#wc -l                wc 需要统计的文件路径 -l:表示lines,行数 -w:表示words,单词数 ...

  5. 物流看板、大数据驾驶舱、物流监控、运输跟踪、车辆运输管控、车辆管理、运单统计、商品流通数据库、配送费、发货件数、行驶耗油、违规管理、告警信息、车队统计、车辆信息查询、运输状态、运输数量、运输进度

    物流看板.大数据驾驶舱.物流监控.运输跟踪.车辆运输管控.车辆管理.运单统计.商品流通数据库.配送费.发货件数.行驶耗油.违规管理.告警信息.车队统计.车辆信息查询.运输状态.运输数量.运输进度 Ax ...

  6. DB2 降低高水位线、刷新统计、索引信息

    当对DB2表进行大批量的操作之后,就会发现查询非常慢,索引也不起作用了.这就可能是统计.索引信息没有刷新的问题,以下是解决办法. db2 connect to DBNAME db2 reorg tab ...

  7. 27个机器学习图表翻译_使用机器学习的信息图表信息组织

    27个机器学习图表翻译 Infographics are crucial for presenting information in a more digestible fashion to the ...

  8. 信息组织与检索【知识点整理】| 信息检索技术与方法 信息检索系统结构和功能模块 信息描述 信息标引 信息存储

    目录 1 简单的定义 (一)广义的信息检索(信息组织+信息检索) (二)狭义的信息检索 2 信息检索技术与方法 (一)文本信息检索 (二)多媒体信息检索 3 信息检索系统结构和功能模块 (一)信息检索 ...

  9. hexo教程:搜索SEO+阅读量统计+访问量统计+评论系统

    hexo教程:搜索SEO+阅读量统计+访问量统计+评论系统 更多精彩内容欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz或者http://www.zh66.club期待您的光临 ...

最新文章

  1. JavaSript模块化 AMD CMD 详解.....
  2. 你真的了解For循环吗?一道For循环Java面试题引发的思考
  3. python中requests库的用途-python中requests库session对象的妙用详解
  4. mysql 活跃事务_MySQL日志与事务
  5. mysql 如何清除sql缓存
  6. 文思创新面试总结(1)
  7. 微信小程序uni.getImageInfo踩坑大计划
  8. ASP.NET之通过JS向服务端(后台)发出请求(__doPostBack is undefined)
  9. HiveServer2入门到熟悉
  10. 如何查看CSDN积分
  11. 程序员记录每天工作日志软件_程序员日志记录简介
  12. 数字图像处理第三版4.8.4例子GLPF高斯低通滤波器matlab程序
  13. 如何转换成Ogg和MPEG4格式
  14. 真假内推?直拿offer?别被无良中介给骗了
  15. 鲁大师被win10识别为病毒?
  16. 定时器 setTimeout(),setInterval() 清除定时器
  17. 转-Linux进程后台运行的几种方法
  18. 就很凸然,电脑里多出了一个文件···
  19. Java语音怎么输出翼型_使用ICEM CFD建立二维翼型流场网格
  20. python使用openpyxl excel 合并拆分单元格

热门文章

  1. 2019福建省c语言知识点,2019最新C语言知识整理(干货)
  2. java皮肤_java程序的皮肤效果实现代码
  3. jqgrid为什么表头和数据之间有间隙_面试官:你看过Redis数据结构底层实现吗?...
  4. linux清除软件配置文件,Linux清除已删除软件包的配置文件命令瞎总结
  5. 怎么结束linux里的redis进程,linux 怎么结束redis的monitor命令
  6. matlab重建算法stomp,压缩感知图像重建算法的研究现状及其展望.pdf
  7. 8.霍夫变换:线条——介绍、参数模型、直线拟合_1
  8. 计算机档案管理的研究及其应用,计算机地质档案管理的研究及其应用.doc
  9. nmmqq.php?/lspc.html,html中的图片直接使用base64编码后的字符串代替详解
  10. gulp临时服务器显示html页面,用Gulp实现CSS压缩和页面自动刷新