ORA-12872: First slave parse gave different plan

文档解释

ORA-12872: First slave parse gave different plan

Cause: First hard parse on slave given QC-supplied environment and parameters gave different plan from QC. Try again with outline.

Action: No external action. Internally used for outline-based reparse.

ORA-12872 表示只要第一次分析(parsing)所得的执行计划和分析得到的执行计划存在偏差时之后若有更新,则不会更新第一次得到的执行计划。

官方解释

常见案例

正常处理方法及步骤

1、确认ORACLE优化器正确访问到了最新的数据统计信息,比如检查分区表、全局索引、表和索引等;

2、在SQL语句中+CURSOR_SHARING_EXACT加以强制改变;

3、使用DBMS_STATS.GATHER_TABLE_STATS重新分析表;

4、将实用程序计划转换为本地大小写;

5、如果查询过慢,请重新设计查询SQL来减少执行计划变化;

6、使用事务进行提交或者回滚,以便避免部分表数据的更新操作可能影响执行计划的变化;

7、可以尝试替换hints、更改SQL语句上的有关表别名等,从而抑制ORACLE优化器的重新执行;

8、使用ALTER SESSION会话命令将OPTIMIZER_USE_SQL_PLAN_BASELINES参数改为FALSE;

9、不要在过时的RDBMS上使用Oracle工具。

你可能感兴趣的