需要绑定SQL执行计划常见的几种情况:
    SQL执行计划突变,导致数据库性能下降,从历史执行计划找一个合理的,进行绑定。
    SQL无法使用更优的执行计划,且无历史执行计划,可通过hint手工构造的方式,进行绑定。
    某些Bug引起优化器生成较差的执行计划。在bug修复前,进行绑定。

    通过sql profile绑定执行计划

    1. 执行coe_xfr_sql_profile
    2. 输入问题sql的sql id,他会计算出每个hash value的sql的平均执行时间
    3. 输入最短时间的hash value

    image.png

    1. 在当前目录生成绑定sql profile的sql语句,然后执行该sql语句,就能绑定sql profile
      image.png
      5. 通过下面三条sql管理该sql的profile

    查看已经生成的sql profile
    SELECT * FROM DBA_SQL_PROFILES;

    禁用
    EXEC DBMS_SQLTUNE.ALTER_SQL_PROFILE(‘PROFILE_NAME’,’STATUS’,’DISABLED’);

    删除
    EXEC DBMS_SQLTUNE.DROP_SQL_PROFILE(‘PROFILE_NAME’);