如何检查GATHER_STATS_JOB任务的执行情况

2023-10-08 00:48

本文主要是介绍如何检查GATHER_STATS_JOB任务的执行情况,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://www.eygle.com/archives/2009/09/gather_stats_job.html

GATHER_STATS_JOB是10g开始引入的自动统计数据收集功能的重要组成部分,但是这个定时任务带来的问题也是较多的,应当根据应用的具体情况进行定制,通过DBA_SCHEDULER_JOBS可以查询JOB的执行情况:

SQL> col job_name for a20
SQL> col owner for a5
SQL> col last_start_date for a36
SQL> col last_run_duration for a30
SQL> col state for a10
SQL> SELECT owner,job_name,state,last_start_date,last_run_duration,failure_count
  2  FROM dba_scheduler_jobs WHERE job_name = 'GATHER_STATS_JOB';

OWNER JOB_NAME         STATE     LAST_START_DATE LAST_RUN_DURATION FAILURE_COUNT
----- ---------------- --------- --------------- ----------------- -------------
SYS   GATHER_STATS_JOB SCHEDULED 09-SEP-09 10.00 +000000000 00:10:             0

进一步的,通过dba_scheduler_job_run_details表可以获得JOB的执行情况细节,以下显示JOB都执行成功:

SQL> col job_name for a20
SQL> SELECT log_id, job_name, status,
  2  TO_CHAR (log_date, 'DD-MON-YYYY HH24:MI') log_date
  3  FROM dba_scheduler_job_run_details
  4  WHERE job_name = 'GATHER_STATS_JOB';

    LOG_ID JOB_NAME             STATUS                         LOG_DATE
---------- -------------------- ------------------------------ --------------------
     52135 GATHER_STATS_JOB     SUCCEEDED                      12-AUG-2009 22:04
     53615 GATHER_STATS_JOB     SUCCEEDED                      25-AUG-2009 22:02
     52755 GATHER_STATS_JOB     SUCCEEDED                      18-AUG-2009 22:03
     54075 GATHER_STATS_JOB     SUCCEEDED                      29-AUG-2009 06:03
     54735 GATHER_STATS_JOB     SUCCEEDED                      05-SEP-2009 06:02
     52415 GATHER_STATS_JOB     SUCCEEDED                      15-AUG-2009 06:03
     53995 GATHER_STATS_JOB     SUCCEEDED                      28-AUG-2009 22:03
     52055 GATHER_STATS_JOB     SUCCEEDED                      11-AUG-2009 22:03
     53895 GATHER_STATS_JOB     SUCCEEDED                      27-AUG-2009 22:02
     52655 GATHER_STATS_JOB     SUCCEEDED                      17-AUG-2009 22:04
     54296 GATHER_STATS_JOB     SUCCEEDED                      31-AUG-2009 22:03
     54395 GATHER_STATS_JOB     SUCCEEDED                      01-SEP-2009 22:03
     54495 GATHER_STATS_JOB     SUCCEEDED                      02-SEP-2009 22:02
     54595 GATHER_STATS_JOB     SUCCEEDED                      03-SEP-2009 22:02
     52235 GATHER_STATS_JOB     SUCCEEDED                      13-AUG-2009 22:03
     52355 GATHER_STATS_JOB     SUCCEEDED                      14-AUG-2009 22:03
     54675 GATHER_STATS_JOB     SUCCEEDED                      04-SEP-2009 22:02
     54995 GATHER_STATS_JOB     SUCCEEDED                      07-SEP-2009 22:04
     55115 GATHER_STATS_JOB     SUCCEEDED                      08-SEP-2009 22:03
     55256 GATHER_STATS_JOB     SUCCEEDED                      09-SEP-2009 22:10
     52916 GATHER_STATS_JOB     SUCCEEDED                      19-AUG-2009 22:10
     53775 GATHER_STATS_JOB     SUCCEEDED                      26-AUG-2009 22:03
     53455 GATHER_STATS_JOB     SUCCEEDED                      24-AUG-2009 22:04
     53235 GATHER_STATS_JOB     SUCCEEDED                      22-AUG-2009 06:02
     53055 GATHER_STATS_JOB     SUCCEEDED                      20-AUG-2009 22:02
     53155 GATHER_STATS_JOB     SUCCEEDED                      21-AUG-2009 22:04

26 rows selected.

这个JOB任务运行的具体过程如下:
SQL> select PROGRAM_ACTION from dba_scheduler_programs where PROGRAM_NAME = 'GATHER_STATS_PROG';

PROGRAM_ACTION
------------------------------------------
dbms_stats.gather_database_stats_job_proc

以下是一个TB级海量数据库的统计数据收集情况,可以看到这个任务在很多时候于凌晨6:00被强制停止,因为数据量太大,分析不完了,而在周末全天运行时,有时候可以完成任务:

SQL> SELECT log_id, job_name, status,
  2         TO_CHAR (log_date, 'DD-MON-YYYY HH24:MI') log_date
  3  FROM dba_scheduler_job_run_details
  4  WHERE job_name = 'GATHER_STATS_JOB' order by 1;

    LOG_ID JOB_NAME             STATUS                         LOG_DATE
---------- -------------------- ------------------------------ ------------------------------
     23749 GATHER_STATS_JOB     STOPPED                        18-AUG-2009 06:00
     23803 GATHER_STATS_JOB     STOPPED                        19-AUG-2009 06:00
     23857 GATHER_STATS_JOB     STOPPED                        20-AUG-2009 06:00
     23911 GATHER_STATS_JOB     STOPPED                        21-AUG-2009 06:00
     23965 GATHER_STATS_JOB     STOPPED                        22-AUG-2009 06:00
     23978 GATHER_STATS_JOB     SUCCEEDED                      22-AUG-2009 10:15
     24109 GATHER_STATS_JOB     STOPPED                        24-AUG-2009 23:53
     24129 GATHER_STATS_JOB     STOPPED                        25-AUG-2009 00:27
     24133 GATHER_STATS_JOB     SUCCEEDED                      29-AUG-2009 19:43
     24162 GATHER_STATS_JOB     STOPPED                        25-AUG-2009 06:00
     24216 GATHER_STATS_JOB     STOPPED                        26-AUG-2009 06:00
     24270 GATHER_STATS_JOB     STOPPED                        27-AUG-2009 06:00
     24324 GATHER_STATS_JOB     STOPPED                        28-AUG-2009 06:00
     24378 GATHER_STATS_JOB     STOPPED                        29-AUG-2009 06:00
     24533 GATHER_STATS_JOB     STOPPED                        01-SEP-2009 06:00
     24587 GATHER_STATS_JOB     STOPPED                        02-SEP-2009 06:00
     24641 GATHER_STATS_JOB     STOPPED                        03-SEP-2009 06:00
     24695 GATHER_STATS_JOB     STOPPED                        04-SEP-2009 06:00
     24749 GATHER_STATS_JOB     STOPPED                        05-SEP-2009 06:00
     24759 GATHER_STATS_JOB     SUCCEEDED                      05-SEP-2009 09:27
     24906 GATHER_STATS_JOB     STOPPED                        08-SEP-2009 06:00
     24946 GATHER_STATS_JOB     STOPPED                        08-SEP-2009 23:54
     24966 GATHER_STATS_JOB     STOPPED                        09-SEP-2009 00:06
     24970 GATHER_STATS_JOB     STOPPED                        09-SEP-2009 05:58
     25123 GATHER_STATS_JOB     STOPPED                        10-SEP-2009 06:00
     25177 GATHER_STATS_JOB     STOPPED                        11-SEP-2009 06:00
     25231 GATHER_STATS_JOB     STOPPED                        12-SEP-2009 06:00
     25257 GATHER_STATS_JOB     SUCCEEDED                      12-SEP-2009 16:31
     25379 GATHER_STATS_JOB     SUCCEEDED                      15-SEP-2009 01:10
     25429 GATHER_STATS_JOB     SUCCEEDED                      15-SEP-2009 23:28

30 rows selected.

这篇关于如何检查GATHER_STATS_JOB任务的执行情况的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/161565

相关文章

检查 Nginx 是否启动的几种方法

《检查Nginx是否启动的几种方法》本文主要介绍了检查Nginx是否启动的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1. 使用 systemctl 命令(推荐)2. 使用 service 命令3. 检查进程是否存在4

Android使用java实现网络连通性检查详解

《Android使用java实现网络连通性检查详解》这篇文章主要为大家详细介绍了Android使用java实现网络连通性检查的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录NetCheck.Java(可直接拷贝)使用示例(Activity/Fragment 内)权限要求

SpringBoot中使用定时任务schedule详解

《SpringBoot中使用定时任务schedule详解》文章介绍了如何在Spring应用中使用@EnableScheduling注解启用定时任务,并创建一个配置类来定义定时任务的执行,文章还详细解释... 目录1、在spring启动类上添加注解@EnableScheduling2、创建定时任务配置类3、执

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

java中ssh2执行多条命令的四种方法

《java中ssh2执行多条命令的四种方法》本文主要介绍了java中ssh2执行多条命令的四种方法,包括分号分隔、管道分隔、EOF块、脚本调用,可确保环境配置生效,提升操作效率,具有一定的参考价值,感... 目录1 使用分号隔开2 使用管道符号隔开3 使用写EOF的方式4 使用脚本的方式大家平时有没有遇到自

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

Spring定时任务之fixedRateString的实现示例

《Spring定时任务之fixedRateString的实现示例》本文主要介绍了Spring定时任务之fixedRateString的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录从毫秒到 Duration:为何要改变?核心:Java.time.Duration.parse