为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:CentOS 7.6
【CPU】:X86
【问题描述】*:
按照system packages.pdf手册操作DBMS_XPLAN输出执行计划报错:
-20001: 语句执行计划历史不存在
-20001: DBMS_XPLAN.DISPLAY_PLANHIST line 22
操作过程:
前提条件确认:
如下两个参数也确定了,其中enable_monitor_plnhist是通过alter system set方式修改的:
SQL> show parameter USE_PLN_POOL
行号 PARA_NAME PARA_VALUE
1 USE_PLN_POOL 1
SQL> show parameter ENABLE_MONITOR_PLNHIST
行号 PARA_NAME PARA_VALUE
1 ENABLE_MONITOR_PLNHIST 1
个人理解是通过执行sp_flush_hist_plan,将v$sql_history刷到磁盘的sysPLANHIST表中,但是执行了之后 ,发现sysplanhist总是空的。
这个我验证了下,是开启参数之后生成的执行计划才会生效,你可以执行一个新的SQL(不一样的),然后再查视图

select * from sysplanhist
就看到