调整统计信息JOB采样时间
发布时间:2021-02-25 23:04:32 所属栏目:站长百科 来源:网络整理
导读:一、需求说明 ? ?Oracle数据库中存在定时JOB,自动执行收集统计信息的程序。但是对于7*24小时系统来说,Oracle配置的定时收集时间不太合理,需要人为调整。本篇博客就是基于这种需求,调整JOB采样的时间及终止时间。 ? ?思路:查询现有的默认收集统计信息的策
副标题[/!--empirenews.page--]
一、需求说明? ?Oracle数据库中存在定时JOB,自动执行收集统计信息的程序。但是对于7*24小时系统来说,Oracle配置的定时收集时间不太合理,需要人为调整。本篇博客就是基于这种需求,调整JOB采样的时间及终止时间。 ? ?思路:查询现有的默认收集统计信息的策略,对它进行调整,调整后进行检查修改有效,操作完毕。 二、操作步骤2.1 修改前,查询JOB信息查询数据库自动收集统计信息是否被禁用 SQL> select client_name,status from dba_autotask_client; CLIENT_NAME STATUS
? 2.2 修改操作--周六日统计信息收集最长时间调整为4小时 BEGIN dbms_scheduler.disable( name => ‘SATURDAY_WINDOW‘); dbms_scheduler.set_attribute( name => ‘SATURDAY_WINDOW‘,attribute => ‘DURATION‘,value => numtodsinterval(4,‘hour‘)); dbms_scheduler.enable( name => ‘SATURDAY_WINDOW‘); END; / BEGIN dbms_scheduler.disable( name => ‘SUNDAY_WINDOW‘); dbms_scheduler.set_attribute( name => ‘SUNDAY_WINDOW‘,‘hour‘)); dbms_scheduler.enable( name => ‘SUNDAY_WINDOW‘); END; / commit; -- --统计信息开始收集时间调整 周一-周五,调整为0点开始 1 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."MONDAY_WINDOW"‘,attribute=>‘REPEAT_INTERVAL‘,value=>‘FREQ=WEEKLY;BYDAY=MON;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 2 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."TUESDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=TUE;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 3 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."WEDNESDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=WED;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 4 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."THURSDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=THU;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 5 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."FRIDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=FRI;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 6 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."SATURDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=SAT;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / 7 BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name=>‘"SYS"."SUNDAY_WINDOW"‘,value=>‘FREQ=WEEKLY;BYDAY=SUN;BYHOUR=0;BYMINUTE=0;BYSECOND=0‘); END; / SQL> commit; 2.3? 修改后检查SQL> select t1.window_name,‘BSLN_MAINTAIN_STATS_SCHED‘); 2 WINDOW_NAME REPEAT_INTERVAL DURATION -------------------- ------------------------------------------------------- ---------------------------------------------- SATURDAY_WINDOW FREQ=WEEKLY;BYDAY=SAT;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 04:00:00 FRIDAY_WINDOW FREQ=WEEKLY;BYDAY=FRI;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 06:00:00 THURSDAY_WINDOW FREQ=WEEKLY;BYDAY=THU;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 06:00:00 WEDNESDAY_WINDOW FREQ=WEEKLY;BYDAY=WED;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 06:00:00 TUESDAY_WINDOW FREQ=WEEKLY;BYDAY=TUE;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 06:00:00 MONDAY_WINDOW FREQ=WEEKLY;BYDAY=MON;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 06:00:00 SUNDAY_WINDOW FREQ=WEEKLY;BYDAY=SUN;BYHOUR=0;BYMINUTE=0;BYSECOND=0 +000 04:00:00 7 rows selected. SQL> select WINDOW_NAME,to_char(WINDOW_START_TIME,‘yyyy-mm-dd hh24:mi:ss‘),to_char(WINDOW_END_TIME,‘yyyy-mm-dd hh24:mi:ss‘) (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |