查詢 DBA_AUTOTASK_WINDOW_CLIENTS 發現所有維護視窗(MONDAY_WINDOW … SUNDAY_WINDOW)的 AUTOTASK_STATUS 均為 DISABLED,導致 auto optimizer stats collection 雖顯示 ENABLED 但實際不執行。
資料庫安裝時未勾選「啟用自動維護任務」(預設勾選),安裝程式自動執行:
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE();
導致所有自動維護視窗關閉。
SQL> EXEC DBMS_AUTO_TASK_ADMIN.ENABLE(); PL/SQL procedure successfully completed. SQL> SELECT window_name, autotask_status FROM DBA_AUTOTASK_WINDOW_CLIENTS; WINDOW_NAME AUTOTASK_STATUS -------------------- --------------- MONDAY_WINDOW ENABLED TUESDAY_WINDOW ENABLED WEDNESDAY_WINDOW ENABLED THURSDAY_WINDOW ENABLED FRIDAY_WINDOW ENABLED SATURDAY_WINDOW ENABLED SUNDAY_WINDOW ENABLED
DBMS_AUTO_TASK_ADMIN.ENABLE/DISABLE 為 11g 官方 API,無需重啟資料庫即時生效。DBA_AUTOTASK_CLIENT 確認 auto optimizer stats collection、auto space advisor、sql tuning advisor 三大任務皆為 ENABLED。DBMS_SCHEDULER.SET_ATTRIBUTE 調整 WINDOW_DURATION、REPEAT_INTERVAL 等屬性。