如何检查自动统计信息的收集
文章是草拟的可能有错误,如果对文章有任何的问题请使用metalink上的反馈按钮。
本文目的是说明提供有关如何检查自动统计信息收集
范围应用。基于成本的优化器数据库对象的统计信息对用户的收集。
如何检查自动统计信息
随着oracle10g 统计数据收集已自动化,这是建立在数据库创建过程的时间表自动统计数据收集GATHER_STATS_JOB。这个工作计划是适当收集数据库的问题。查询DBA_SCHEDULER_JOBS视图可以 看到详情信息:
select job_name, job_type, program_name, schedule_name, job_class
from dba_scheduler_jobs
where job_name = 'GATHER_STATS_JOB';
JOB_NAME JOB_TYPE PROGRAM_NAME SCHEDULE_NAME JOB_CLASS
------------------------------ ---------------- ------------------- ------------------------- ------------------------------
GATHER_STATS_JOB GATHER_STATS_PROG MAINTENANCE_WINDOW_GROUP AUTO_TASKS_JOB_CLASS
输出结果表明,,“GATHER_STATS_JOB”这个生成
“GATHER_STATS_PROG,”时间表在“GATHER_STATS_PROG'开头的DBMS_STATS.GATHER_DATABASE_STATS_JOB_PROC中、
存储过程:
select PROGRAM_ACTION
from dba_scheduler_programs
where PROGRAM_NAME = 'GATHER_STATS_PROG';
PROGRAM_ACTION
----------------------------------------------
dbms_stats.gather_database_stats_job_proc
The job is scheduled according to the value of the SCHEDULE_NAME field.
In this example, the schedule being used is: 'MAINTENANCE_WINDOW_GROUP'.
This schedule is defined in the DBA_SCHEDULER_WINGROUP_MEMBERS view:
select *
from DBA_SCHEDULER_WINGROUP_MEMBERS
where WINDOW_GROUP_NAME = 'MAINTENANCE_WINDOW_GROUP';
WINDOW_GROUP_NAME WINDOW_NAME
------------------------- ------------------------------
MAINTENANCE_WINDOW_GROUP WEEKNIGHT_WINDOW
MAINTENANCE_WINDOW_GROUP WEEKEND_WINDOW
可发现这些windows的含义可以在'DBA_SCHEDULER_WINDOWS'中找到:
select window_name, repeat_interval, duration
from dba_scheduler_windows
where window_name in ('WEEKNIGHT_WINDOW', 'WEEKEND_WINDOW')
WINDOW_NAME REPEAT_INTERVAL DURATION
----------------- ---------------------------------------------------------------------- -------------
WEEKNIGHT_WINDOW freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=22;byminute=0; bysecond=0 +000 08:00:00
WEEKEND_WINDOW freq=daily;byday=SAT;byhour=0;byminute=0;bysecond=0 +002 00:00:00
以上含义如下:
WEEKNIGHT_WINDOW是预定每周日晚上10点,去年最高为8小时,weekend_
window是在每个周六上午12时和最近2天最大如果start_date和end_date列为空,那么这项工作将持续运行。所有的这些定义可以再ORACLE_HOME / RDBMS / ADMIN / catmwin.sql中找到。