一旦我们在 Oracle 中为 SQL ID 固定了一个哈希计划,Oracle 将来会更改该计划吗?
Once we pinned one hash plan for SQL ID in Oracle, will Oracle change the plan in the future?
一旦我们将 SQL ID 的一个哈希计划固定到特定的 SQL 配置文件,Oracle 将来会更改该计划吗?例如。如果我们在数据库端进行一些数据库升级或新代码修复?固定计划何时更改?
如果 Oracle 发现有可能更好的执行路径可用,优化器可能 select 改用该计划。
所以,是的,Oracle 可能不会使用固定计划。
来自docs:
Unlike hints and stored outlines, SQL profiles do not tie the
optimizer to a specific plan or subplan. SQL profiles fix incorrect
estimates while giving the optimizer the flexibility to pick the best
plan in different situations.
Sql 配置文件可能会使用不同的计划,如果它发现数据分布有一些变化或新的 indexes.If 您不希望计划有任何变化使用存储大纲。
一旦我们将 SQL ID 的一个哈希计划固定到特定的 SQL 配置文件,Oracle 将来会更改该计划吗?例如。如果我们在数据库端进行一些数据库升级或新代码修复?固定计划何时更改?
如果 Oracle 发现有可能更好的执行路径可用,优化器可能 select 改用该计划。
所以,是的,Oracle 可能不会使用固定计划。
来自docs:
Unlike hints and stored outlines, SQL profiles do not tie the optimizer to a specific plan or subplan. SQL profiles fix incorrect estimates while giving the optimizer the flexibility to pick the best plan in different situations.
Sql 配置文件可能会使用不同的计划,如果它发现数据分布有一些变化或新的 indexes.If 您不希望计划有任何变化使用存储大纲。