天萃荷净
Migrating Stored Outlines to SQL Plan Baselines,执行计划的变化有两个方向,更好的性能和更差的性能, 11g以前为了保证执行计划的稳定性通过Stored Outlines和锁定统计信息,但是这样屏蔽了优化的一些新的特性和更优的执行计划。
测试环境:11.2.0.3.0
1,创建一个Outline
SQL> create outline outline_test on select count(*) from scott.test where owner=’SCOTT’;
Outline created.
2,开始迁移
SQL> var rpt clob;
SQL> set serveroutput on;
SQL> exec :rpt := dbms_spm.migrate_stored_outline(attribute_name => ‘CATEGORY’, attribute_value => ‘DEFAULT’);
PL/SQL procedure successfully completed.
3,迁移后,确认是否迁移成功
SQL> select name,migrated from dba_outlines;
NAME MIGRATED
—————————– ————
OUTLINE_TEST MIGRATED
这里可以发现migrated已经标记为migrated,下次迁移的时候就不会再迁移了。
SQL> @sql_spm.sql
SQL> set echo off
ENABLE:ACCTPE
FIXED PARSING CREATED
SQL_HANDLE PLAN_NAME ORIGIN AUTOPURGE COST SCHEMA MODIFIED SQL_TEXT
—————————— —————————— ————– ——————– ——– ————— —————– ————————————————–
SQL_2f030a70eeeec40f OUTLINE_TEST STORED-OUTLINE YES.YES.NO.NO 8 SYS 11-23 05.11-23 05 select count(*) from scott.test where owner=’SCOTT
‘
本文固定链接: http://www.htz.pw/2014/06/26/migrating-stored-outlines-to-sql-plan-baselines.html | 认真就输
--------------------------------------ORACLE-DBA----------------------------------------
最权威、专业的Oracle案例资源汇总之【学习笔记】Oracle数据库SQL Plan Management详解案例
本文由大师惜分飞原创分享,网址:http://www.oracleplus.net/arch/1054.html