SQL優化顧問會在正常的維護窗口自動運行。
啓動sql優化顧問:
begin
dbms_auto_task_admin.ENABLE(clien_name=>'sql tuning advisor',
operation =>NULL,
WINDOW_NAM=>NULL
);
END;
配置自動SQL優化顧問
SELECT T.parameter_name, T.parameter_value
FROM DBA_ADVISOR_PARAMETERS T
WHERE T.task_name = 'SYS_AUTO_SQL_TUNING_TASK'
AND T.parameter_name IN
('ACCEPT_SQL_PROFILES',
'MAX_AUTO_SQL_PROFILES',
'MAX_SQL_PROFILES_PER_EXEC')
BEGIN
DBMS_SQLTUNE.set_tuning_task_parameter(task_name => 'SYS_AUTO_SQL_TUNING_TASK',
parameter => 'ACCEPT_SQL_PROFILES',
value => 'TRUE'
);
END;
執行任務:
begin
dbms_sqltune.execute_tuning_task(task_name => 'SYS_AUTO_SQL_TUNING_TASK');
end;
select dbms_sqltune.report_tuning_task(task_name => 'SYS_AUTO_SQL_TUNING_TASK') from dual;