溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

oracle11g自動維護任務(wù)

發(fā)布時間:2020-07-15 13:58:28 來源:網(wǎng)絡(luò) 閱讀:1195 作者:jsj_007 欄目:關(guān)系型數(shù)據(jù)庫

oracle 11g中默認(rèn)的自動維護任務(wù)分三類:
Automatic Optimizer Statistics Collection(自動優(yōu)化器統(tǒng)計信息收集)
收集數(shù)據(jù)庫中所有無統(tǒng)計信息或僅有過時統(tǒng)計信息的 Schema 對象的 Optimizer(優(yōu)化器)統(tǒng)計信息。SQL query optimizer(SQL 查詢優(yōu)化器)使用此任務(wù)收集的統(tǒng)計信息提高 SQL 執(zhí)行的性能。 *

Automatic Segment Advisor(自動段指導(dǎo))
識別有可用回收空間的段,并提出如何消除這些段中的碎片的建議。您也可以手動運行 Segment Advisor 獲取更多最新建議,或獲取 Automatic Segment Advisor 沒有檢查到的那些有可能做空間回收的段的建議。*

* Automatic SQL Tuning Advisor(自動 SQL 優(yōu)化指導(dǎo))
檢查高負(fù)載 SQL 語句的性能,并提出如何優(yōu)化這些語句的建議。您可以配置此指導(dǎo),自動應(yīng)用建議的SQL profile。

啟用/禁用維護任務(wù):
client_name來自:
select * from DBA_AUTOTASK_CLIENT

---禁用

BEGIN
  dbms_auto_task_admin.disable(
    client_name => 'sql tuning advisor',
    operation   => NULL,
    window_name => NULL);
END;
/

---啟用

BEGIN
  dbms_auto_task_admin.enable(
    client_name => 'sql tuning advisor',
    operation   => NULL,
    window_name => NULL);
END;
/

要為所有窗口啟用或禁用所有自動維護任務(wù),請在不帶參數(shù)的情況下調(diào)用ENABLE或DISABLE過程:

---禁用
EXECUTE DBMS_AUTO_TASK_ADMIN.DISABLE;

---啟用
EXECUTE DBMS_AUTO_TASK_ADMIN.DISABLE;

---結(jié)果
select * from DBA_AUTOTASK_WINDOW_CLIENTS;

禁用特定的維護窗口:

BEGIN
  dbms_auto_task_admin.disable(
    client_name => 'sql tuning advisor', 
    operation   => NULL, 
    window_name => 'MONDAY_WINDOW');
END;
/

10g與11g預(yù)定義調(diào)度程序窗口的區(qū)別:
Oracle10g : WEEKNIGHT_WINDOW and WEEKEND_WINDOW
Oracle11g : MONDAY_WINDOW .... SUNDAY_WINDOW.
為了向下兼容,WEEKNIGHT_WINDOW 和 WEEKEND_WINDOW 仍然存在。
窗口打開持續(xù)的時間在 11g 中有所更改。星期一到星期五從晚上10點到凌晨2點,星期六到星期日從上午6點到凌晨2點。

修改自動任務(wù)的運行時間開始于23點,持續(xù)時間60分鐘:

exec dbms_scheduler.disable( name => ‘MONDAY_WINDOW’, force => TRUE);
exec dbms_scheduler.set_attribute( name => ‘MONDAY_WINDOW’, attribute => ‘repeat_interval’,value => ‘freq=daily;byday=MON;byhour=23;byminute=0;bysecond=0’);
exec dbms_scheduler.set_attribute( name => ‘MONDAY_WINDOW’, attribute => ‘DURATION’,value => numtodsinterval(60,'minute')));
exec dbms_scheduler.enable( name => ‘MONDAY_WINDOW’);

結(jié)果查看:
select * from dba_scheduler_windows;

默認(rèn)使用DEFAULT_MAINTENANCE_PLAN資源計劃:

SQL> select window_name, resource_plan from dba_scheduler_windows;

WINDOW_NAME            RESOURCE_PLAN
------------------------------ ------------------------------
MONDAY_WINDOW              DEFAULT_MAINTENANCE_PLAN
TUESDAY_WINDOW             DEFAULT_MAINTENANCE_PLAN
WEDNESDAY_WINDOW           DEFAULT_MAINTENANCE_PLAN
THURSDAY_WINDOW            DEFAULT_MAINTENANCE_PLAN
FRIDAY_WINDOW              DEFAULT_MAINTENANCE_PLAN
SATURDAY_WINDOW            DEFAULT_MAINTENANCE_PLAN
SUNDAY_WINDOW              DEFAULT_MAINTENANCE_PLAN
WEEKNIGHT_WINDOW
WEEKEND_WINDOW

默認(rèn)資源管理

DEFAULT_MAINTENANCE_PLAN defines the following resource allocations:

Consumer Group/subplan  Level 1     Level 2     Maximum Utilization Limit
ORA$AUTOTASK_SUB_PLAN   -           25%         90
ORA$DIAGNOSTICS         -           5%          90
OTHER_GROUPS            -           70%  
SYS_GROUP               75%         -

在此計劃中,SYS_GROUP消費者組中的任何會話都將獲得優(yōu)先權(quán)。(此組中的會話是由用戶帳戶創(chuàng)建的會話SYS和SYSTEM。)會話中未使用的任何資源分配SYS_GROUP隨后由屬于計劃中其他使用者組和子計劃的會話共享。在該分配中,25%用于維護任務(wù),5%用于執(zhí)行診斷操作的后臺進程,70%用于用戶會話。用于最大利用率限制ORA$AUTOTASK_SUB_PLAN和ORA$DIAGNOSTICS為90。因此,即使CPU空閑,該計劃不能被分配超過90%的CPU資源。

相關(guān)視圖:

dba_scheduler_window_groups;  --維護窗口組
dba_scheduler_wingroup_members --維護窗口組對應(yīng)窗口
dba_scheduler_windows --維護窗口歷史信息
DBA_AUTOTASK_CLIENT_JOB --查詢自動收集任務(wù)正在執(zhí)行的job
DBA_AUTOTASK_JOB_HISTORY --查詢自動收集任務(wù)歷史執(zhí)行狀態(tài)
DBA_AUTOTASK_CLIENT_HISTORY --查詢自動收集任務(wù)歷史job

參考:調(diào)度程序維護任務(wù)或 Autotasks (文檔 ID 1526120.1)

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI