Oracle11g 特定sql\u ID的sql计划基线信息

Oracle11g 特定sql\u ID的sql计划基线信息,oracle11g,baseline,Oracle11g,Baseline,对于来自sqlplus的特定SQL\u id,我们如何查看优化器当前在SQL计划历史记录中的所有计划列表(已接受和未接受的计划)?当且仅当计划在计划基线中时,才会接受计划。报表的计划历史记录包含所有计划,包括已接受和未接受的计划。优化器在计划基线中生成第一个接受的计划后,每个后续未接受的计划都会添加到计划历史记录中,等待验证,但不在SQL计划基线中 从Oracle数据库12c开始,SMB存储添加到SQL语句的计划历史记录中的新计划的计划行。该函数从SMB获取并显示计划。对于在Oracle Dat

对于来自sqlplus的特定SQL\u id,我们如何查看优化器当前在SQL计划历史记录中的所有计划列表(已接受和未接受的计划)?

当且仅当计划在计划基线中时,才会接受计划。报表的计划历史记录包含所有计划,包括已接受和未接受的计划。优化器在计划基线中生成第一个接受的计划后,每个后续未接受的计划都会添加到计划历史记录中,等待验证,但不在SQL计划基线中

从Oracle数据库12c开始,SMB存储添加到SQL语句的计划历史记录中的新计划的计划行。该函数从SMB获取并显示计划。对于在Oracle Database 12c之前创建的计划,函数必须编译SQL语句并生成计划,因为SMB不存储行

展示计划

SELECT PLAN_TABLE_OUTPUT
FROM   V$SQL s, DBA_SQL_PLAN_BASELINES b, 
       TABLE(
         DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE(b.sql_handle,b.plan_name,'basic') 
       ) t
WHERE  s.EXACT_MATCHING_SIGNATURE=b.SIGNATURE
AND    b.PLAN_NAME=s.SQL_PLAN_BASELINE
AND    s.SQL_ID='31d96zzzpcys9';