Oracle AWR

Da Emigar.
Versione del 15 mag 2020 alle 07:54 di WikiSysop (discussione | contributi) (Creata pagina con "<pre> -- -- https://rajiboracle.blogspot.com/2017/05/how-to-load-sql-plan-baseline-from-awr.html -- sql_id hash_plan_value snap_begin snap_end exec DBMS_SQLTUNE.DROP_SQLSET (...")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Jump to navigation Jump to search
--
-- https://rajiboracle.blogspot.com/2017/05/how-to-load-sql-plan-baseline-from-awr.html
-- sql_id hash_plan_value snap_begin snap_end

exec DBMS_SQLTUNE.DROP_SQLSET (sqlset_name => 'STS_&1');
exec DBMS_SQLTUNE.CREATE_SQLSET( sqlset_name => 'STS_&1', description => 'sts from awr emilio &1 &2 &3 &4');

DECLARE
  cur sys_refcursor;
BEGIN
  OPEN cur FOR
    SELECT VALUE(P)
    FROM TABLE(
       dbms_sqltune.select_workload_repository(begin_snap=>&3, end_snap=>&4,basic_filter=>'sql_id = ''&1''',attribute_list=>'ALL')
              ) p;
     DBMS_SQLTUNE.LOAD_SQLSET( sqlset_name=> 'STS_&1', populate_cursor=>cur);
  CLOSE cur;
END;
/

DECLARE
my_plans pls_integer;
BEGIN
  my_plans := DBMS_SPM.LOAD_PLANS_FROM_SQLSET(
    sqlset_name => 'STS_&1', 
    basic_filter=>'plan_hash_value = ''&2''',
    sqlset_owner => 'SYS',
    fixed => 'YES',
    enabled => 'YES'
    );
END;
/