今天有一个生产库一条sql的性能生产库比测试库差,没有太多的时间去分析原因,所以使用重导spm的方法去生成好的执行计划,过程如下:
测试环境抓出有好执行计划的sql:
variable cnt number;
execute :cnt :=DBMS_SPM.LOAD_PLANS_FROM_CURSOR_CACHE(SQL_ID => 'bvsy2p39cc820', PLAN_HASH_VALUE => 672253729) ;
SQL>
PL/SQL procedure successfully completed
cnt
---------
1
Baseline已经生成:
SQL> select a.sql_handle,a.plan_name,a.creator,a.enabled,a.accepted,a.fixed,a.reproduced,a.autopurge,a.sql_text from dba_sql_plan_baselines a;
SQL_HANDLE PLAN_NAME CREATOR ENABLED ACCEPTED FIXED REPRODUCED AUTOPURGE SQL_TEXT
------------------------------ ------------------------------ ------------------------------ ------- -------- ----- ---------- --------- --------------------------------------------------------------------------------
SQL_f82353ef7b179e90 SQL_PLAN_gh8umxxxjg7nhda887329 DBMGR YES YES NO YES YES MERGE INTO DML_DETAIL_ASSET T USING (SELECT A.VALUATION_DATE, A.PFOLIO_UNIT_CD,
测试环境抓出有好执行计划的sql:
variable cnt number;
execute :cnt :=DBMS_SPM.LOAD_PLANS_FROM_CURSOR_CACHE(SQL_ID => 'bvsy2p39cc820', PLAN_HASH_VALUE => 672253729) ;
SQL>
PL/SQL procedure successfully completed
cnt
---------
1
Baseline已经生成:
SQL> select a.sql_handle,a.plan_name,a.creator,a.enabled,a.accepted,a.fixed,a.reproduced,a.autopurge,a.sql_text from dba_sql_plan_baselines a;
SQL_HANDLE PLAN_NAME CREATOR ENABLED ACCEPTED FIXED REPRODUCED AUTOPURGE SQL_TEXT
------------------------------ ------------------------------ ------------------------------ ------- -------- ----- ---------- --------- --------------------------------------------------------------------------------
SQL_f82353ef7b179e90 SQL_PLAN_gh8umxxxjg7nhda887329 DBMGR YES YES NO YES YES MERGE INTO DML_DETAIL_ASSET T USING (SELECT A.VALUATION_DATE, A.PFOLIO_UNIT_CD,
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15779287/viewspace-706269/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/15779287/viewspace-706269/