Oracle 11g 系統自帶任務的檢視和更改

feelpurple發表於2016-02-02
檢視自動收集統計資訊的任務及狀態:

SQL> select client_name,status from dba_autotask_client;

CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED
auto space advisor                                               ENABLED
sql tuning advisor                                               ENABLED

獲得當前自動收集統計資訊的執行時間:

  1  select t1.window_name,t1.repeat_interval,t1.duration
  2      from dba_scheduler_windows t1,dba_scheduler_wingroup_members t2
  3*     where t1.window_name=t2.window_name and t2.window_group_name in ('MAINTENANCE_WINDOW_GROUP','BSLN_MAINTAIN_STATS_SCHED')
SQL> /

WINDOW_NAME          REPEAT_INTERVAL                                                        DURATION
-------------------- ---------------------------------------------------------------------- --------------------
MONDAY_WINDOW        freq=daily;byday=MON;byhour=22;byminute=0; bysecond=0                  +000 04:00:00
TUESDAY_WINDOW       freq=daily;byday=TUE;byhour=22;byminute=0; bysecond=0                  +000 04:00:00
WEDNESDAY_WINDOW     freq=daily;byday=WED;byhour=22;byminute=0; bysecond=0                  +000 04:00:00
THURSDAY_WINDOW      freq=daily;byday=THU;byhour=22;byminute=0; bysecond=0                  +000 04:00:00
FRIDAY_WINDOW        freq=daily;byday=FRI;byhour=22;byminute=0; bysecond=0                  +000 04:00:00
SATURDAY_WINDOW      freq=daily;byday=SAT;byhour=6;byminute=0; bysecond=0                   +000 20:00:00
SUNDAY_WINDOW        freq=daily;byday=SUN;byhour=6;byminute=0; bysecond=0                   +000 20:00:00

已選擇7行。

--禁止自動收集統計資訊的任務

exec DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto optimizer stats collection',operation => NULL,window_name => NULL);

--獲得當前自動收集統計資訊的執行時間

select t1.window_name, t1.repeat_interval, t1.duration
  from dba_scheduler_windows t1, dba_scheduler_wingroup_members t2
 where t1.window_name = t2.window_name
   and t2.window_group_name = 'MAINTENANCE_WINDOW_GROUP';

修改統計資訊執行的時間:

1.停止任務:
SQL> BEGIN
  2    DBMS_SCHEDULER.DISABLE(
  3    name => '"SYS"."THURSDAY_WINDOW"',
  4    force => TRUE);  --停止任務是true
  5  END;
  6  /

2.修改任務的持續時間,單位是分鐘:
SQL> BEGIN
  2    DBMS_SCHEDULER.SET_ATTRIBUTE(
  3    name => '"SYS"."THURSDAY_WINDOW"',
  4    attribute => 'DURATION',
  5    value => numtodsinterval(60,'minute'));
  6  END;
  7  /
SQL>

3.開始執行時間,BYHOUR=2,表示2點開始執行:
SQL> BEGIN
  2    DBMS_SCHEDULER.SET_ATTRIBUTE(
  3    name => '"SYS"."THURSDAY_WINDOW"',
  4    attribute => 'REPEAT_INTERVAL',
  5    value => 'freq=daily;byday=THU;byhour=10;byminute=40;bysecond=0');
  6  END;
  7  /

4.開啟任務:
SQL> BEGIN
  2    DBMS_SCHEDULER.ENABLE(
  3    name => '"SYS"."THURSDAY_WINDOW"');
  4  END;
  5  /

5.檢視修改後的情況:

SQL> select t1.window_name,t1.repeat_interval,t1.duration 
  2  from dba_scheduler_windows t1,dba_scheduler_wingroup_members t2
  3  where t1.window_name=t2.window_name and t2.window_group_name in ('MAINTENANCE_WINDOW_GROUP','BSLN_MAINTAIN_STATS_SCHED');

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-1985476/,如需轉載,請註明出處,否則將追究法律責任。

相關文章