引言

Oracle数据库查询将按时实行一些任务计划,比如全自动搜集统计数据和其它工作每日任务。假如统计数据的收集時间恰好追上业务流程高峰时段,很有可能会引发一系列的销售业绩不成功。

那麼,大家如何检查这种数据库查询全自动实行的每日任务的执行计划和实行状况呢?

1.方案对话框调节2.全自动每日任务调节3.每日任务实行状况

1.方案对话框调节。

1.1.查看对话框界定。

根据查看dba_scheduler_Windows能够见到对话框的界定关键点。

col window_name for a30col REPEAT_INTERVAL for a60set lines 1000select window_name,repeat_interval,duration,enabled from dba_scheduler_windows;oracle运维常见故障-财务系统oracle视频教程-第1张图片在11g以后,oracle将之前的仅工作中日和歇息日的归类改善为一周中的每一天。除此之外,与10g对比,初始值的搜集時间大大减少。

1.2.改动对话框开始时间和延迟时间。

默认设置周一至周五每天晚上10点统计分析,时间4h。统计数据于周六早晨6: 00收集,时间20钟头。

--改动对话框开机时间:周六改成22点EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('MONDAY_WINDOW','repeat_interval','freq=daily;byday=MON;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('TUESDAY_WINDOW','repeat_interval','freq=daily;byday=TUE;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('WEDNESDAY_WINDOW','repeat_interval','freq=daily;byday=WED;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('THURSDAY_WINDOW','repeat_interval','freq=daily;byday=THU;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('FRIDAY_WINDOW','repeat_interval','freq=daily;byday=FRI;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('SATURDAY_WINDOW','repeat_interval','freq=daily;byday=SAT;byhour=22;byminute=0;bysecond=0');EXEC DBMS_SCHEDULER.SET_ATTRIBUTE('SUNDAY_WINDOW','repeat_interval','freq=daily;byday=SUN;byhour=6;byminute=0;bysecond=0');--改动对话框duration:在exec dbms_scheduler.set_attribute('MONDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('TUESDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('WEDNESDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('THURSDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('FRIDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('SATURDAY_WINDOW','duration',numtodsinterval(240,'minute'));exec dbms_scheduler.set_attribute('SUNDAY_WINDOW','duration',numtodsinterval(1200,'minute'));oracle运维常见故障-财务系统oracle视频教程-第2张图片2.全自动每日任务调节。

10g版本号沒有这种全自动维护保养每日任务。下列是11g及上面的事例,关键详细介绍如何关闭/开启全自动每日任务(默认设置为关掉。)。

2.1.了解。

select client_name,status from dba_autotask_client;oracle运维常见故障-财务系统oracle视频教程-第3张图片2.2.关掉全自动维护保养每日任务。

--关掉sql tuning advisor,防止耗费太多的資源BEGIN DBMS_AUTO_TASK_ADMIN.disable( client_name => 'sql tuning advisor', operation => NULL, window_name => NULL);END;/--关掉auto space advisor,防止耗费太多的IO,也有防止出现这一每日任务造成的library cache lockBEGIN DBMS_AUTO_TASK_ADMIN.disable( client_name => 'auto space advisor', operation => NULL, window_name => NULL);END;/--关掉全自动统计分析信息收集,(谨慎使用,除非是有别的手工制作搜集统计数据的详细计划方案,不然不建议关掉)BEGIN DBMS_AUTO_TASK_ADMIN.disable( client_name => 'auto optimizer stats collection', operation => NULL, window_name => NULL);END;/oracle运维常见故障-财务系统oracle视频教程-第4张图片2.3.运行全自动维护保养每日任务。

--运行sql tuning advisorBEGIN DBMS_AUTO_TASK_ADMIN.enable( client_name => 'sql tuning advisor', operation => NULL, window_name => NULL);END;/--运行auto space advisorBEGIN DBMS_AUTO_TASK_ADMIN.enable( client_name => 'auto space advisor', operation => NULL, window_name => NULL);END;/--运行全自动统计分析信息收集BEGIN DBMS_AUTO_TASK_ADMIN.enable( client_name => 'auto optimizer stats collection', operation => NULL, window_name => NULL);END;/

3.每日任务的实行。

这儿的关键查看是这一主视图:dba_scheduler_job_run_details。

select owner, job_name, status, ACTUAL_START_DATE, RUN_DURATION from dba_scheduler_job_run_details where job_name like 'ORA$AT_OS_OPT_S%' order by 4;oracle运维常见故障-财务系统oracle视频教程-第5张图片能够看得出,数据统计搜集的JOB_NAME在11g公布后不会再是一个固定不动的名字,反而是一个以ORA$AT_OS_OPT_SY开始的名字。

评论(0条)

刀客源码 游客评论