Slide 35
Slide 35 text
⾃動SQL計画管理を利⽤するためには「⾼頻度⾃動SPM展開
アドバイザ・タスク」を有効にする
• ⾼頻度⾃動SPM展開アドバイザ・タスクの設定として以下の
パラメータをセット
• ALTERNATE_PLAN_BASELINE
(ロードする代替実⾏計画を決定)
• ⾮ADBのデフォルトは'EXISTING'
(ベースラインが存在するSQLに対してのみロードする)
• ADBのデフォルトは'AUTO' (⾃動SPMモードとして動作)
• ALTERNATE_PLAN_SOURCE
(代替実⾏計画の検索するソースを決定)
• デフォルトは'AUTO' (⾃動的にソースが選択される)
• 対象のソースは以下になる
• CURSOR_CACHE
• AUTOMATIC_WORKLOAD_REPOSITORY
• SQL_TUNING_SET (すべてSTSが対象)
※⾃動SPMはSQL計画ベースラインを取得して承認するため、⾃動計画取得を
設定せずに済む
• 初期化パラメータoptimizer_capture_sql_plan_baselines = FALSEのまま
⾃動SQL計画管理の制御
Copyright © 2024, Oracle and/or its affiliates
35
SQL> BEGIN
2 DBMS_SPM.SET_EVOLVE_TASK_PARAMETER(
3 task_name => 'SYS_AUTO_SPM_EVOLVE_TASK’,
4 parameter => ' ALTERNATE_PLAN_BASELINE',
5 value => 'AUTO’);
6
7 DBMS_SPM.SET_EVOLVE_TASK_PARAMETER(
8 task_name => 'SYS_AUTO_SPM_EVOLVE_TASK’,
9 parameter => 'ALTERNATE_PLAN_SOURCE’,
10 value => 'AUTO’);
11 END;
12 /
パラメータの設定
⾼頻度⾃動SPM展開アドバイザを有効化
SQL> Exec DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK','ON');
⾼頻度⾃動SPM展開アドバイザを無効化
SQL> Exec DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK','OFF');