Home > Database > Mysql Tutorial > Oracle经验分享:GATHER_STATS_JOB 任务

Oracle经验分享:GATHER_STATS_JOB 任务

WBOY
Release: 2016-06-07 16:56:08
Original
1445 people have browsed it

应该有开发测试相关的兄弟常常发现,某些半夜跑的报表系统,在系统开始时候好好的,但是数据量越来越大的情况下,报表系统会

  应该有开发测试相关的兄弟常常发现,某些半夜跑的报表系统,在系统开始时候好好的,但是数据量越来越大的情况下,报表系统会越来越慢。

  一般我们可以理解为sql需要优化,存储需要优化等等。

  这里,如果我们使用的是Oracle 10G以上版本,就要小心了,有可能是Oracle自己搞的鬼。

  Oracle10g增加了一个新的任务,用来自动分析数据库,已增加CBO执行的正确性。这个任务就是GATHER_STATS_JOB,,任务定义周一到周五的半夜执行,和周六日全天执行。

  出发点很好,但是,大部分业务晚上常常也要跑大的查询,或者执行计划改变,会引起新的性能问题。这个都是可以预见的。

  下面备忘。

  查看任务详情:

  SELECT owner,job_name,state,last_start_date,last_run_duration,failure_count

  FROM dba_scheduler_jobs WHERE job_name = 'GATHER_STATS_JOB';

  select  PROGRAM_ACTION from dba_scheduler_programs where PROGRAM_NAME = 'GATHER_STATS_PROG';

  任务执行历史:

  SELECT log_id, job_name, status,

  TO_CHAR (log_date, 'DD-MON-YYYY HH24:MI') log_date

  FROM dba_scheduler_job_run_details

  WHERE job_name = 'GATHER_STATS_JOB';

  禁用任务:

  在sysdba下执行:

  exec DBMS_SCHEDULER.DISABLE('GATHER_STATS_JOB');

linux

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template