Automatic的SQL Profile来稳定执行计划(2)


然后我们就可以使用DBMS_SQLTUNE.REPORT_TUNING_TASK来查看上述自动调整任务的调整结果:
SQL> set long 9000
 SQL> set longchunksize 1000
 SQL> set linesize 800
 SQL> select dbms_sqltune.report_tuning_task( 'my_sql_tuning_task_2') from dual;


 DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 -------------------------------------------------------------------------------------------------
 Tuning Task Name  : my_sql_tuning_task_2
 Tuning Task Owner  : SYS
 Workload Type  : Single SQL Statement
 Scope  : COMPREHENSIVE
 Time Limit(seconds): 60
 Completion Status  : COMPLETED
 Started at  : 04/13/2016 23:08:28
 Completed at  : 04/13/2016 23:08:28

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 ---------------------------------------------------------------------------------------------------
 Schema Name: SYS
 SQL ID  : 4bh6sn1zvpgq7
 SQL Text  : select /*+ no_index(t1 idx_t1) */ * from t1 where n=1

-------------------------------------------------------------------------------
 FINDINGS SECTION (1 finding)
 -------------------------------------------------------------------------------

1- SQL Profile Finding (see explain plans section below)
 --------------------------------------------------------

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 -----------------------------------------------------------------------------

Recommendation (estimated benefit: 90.91%)
  ------------------------------------------
  - Consider accepting the recommended SQL profile.
    execute dbms_sqltune.accept_sql_profile(task_name =>
    'my_sql_tuning_task_2', task_owner => 'SYS', replace => TRUE);

Validation results
  ------------------
  The SQL profile was tested by executing both its plan and the original plan

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 ------------------------------------------------------------------------------------------------
  Physical Read Bytes:      0 0
  Physical Write Bytes:      0 0
  Rows Processed:      1 1
  Fetches:      1 1
  Executions:      1 1

Notes
  -----
  1. Statistics for the original plan were averaged over 10 executions.
  2. Statistics for the SQL profile plan were averaged over 10 executions.

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 -------------------------------------------------------------------------------------

-------------------------------------------------------------------------------
 EXPLAIN PLANS SECTION
 -------------------------------------------------------------------------------

1- Original With Adjusted Cost
 ------------------------------
 Plan hash value: 3617692013

--------------------------------------------------------------------------
 | Id  | Operation  | Name | Rows  | Bytes | Cost (%CPU)| Time |

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 ---------------------------------------------------------------------------------------------
 |  0 | SELECT STATEMENT  | |    1 |    4 |    7  (0)| 00:00:01 |
 |*  1 |  TABLE ACCESS FULL| T1 |    1 |    4 |    7  (0)| 00:00:01 |
 --------------------------------------------------------------------------

Predicate Information (identified by operation id):
 ---------------------------------------------------

1 - filter("N"=1)

2- Using SQL Profile

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 -------------------------------------------------------------------------------------------------
 Plan hash value: 1369807930

---------------------------------------------------------------------------
 | Id  | Operation | Name  | Rows  | Bytes | Cost (%CPU)| Time  |
 ---------------------------------------------------------------------------
 |  0 | SELECT STATEMENT |  | 1 | 4 | 1  (0)| 00:00:01 |
 |*  1 |  INDEX RANGE SCAN| IDX_T1 | 1 | 4 | 1  (0)| 00:00:01 |
 ---------------------------------------------------------------------------

Predicate Information (identified by operation id):

DBMS_SQLTUNE.REPORT_TUNING_TASK('MY_SQL_TUNING_TASK_2')
 ------------------------------------------------------------------------------------------------

1 - access("N"=1)

-------------------------------------------------------------------------------

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d019fa4537c14db97900e0992889f815.html