我无法在 prod 数据库中获取 Oracle 执行计划

问题描述

我使用单独的只读帐户(无 DBA 权限)连接到生产数据库,但无法获取查询的执行计划。当我尝试时:

explain plan for
select * from my_table where id = 10;

select plan_table_output from
  table(dbms_xplan.display('plan_table',null,'typical'));

我每次都为不相关的查询制定不同的计划。我猜每秒有太多的查询,以至于该计划会立即被其他查询取代。

然后,我尝试添加一个“语句 ID”:

explain plan set statement_id = 'st1' for
select * from my_table where id = 10;

select plan_table_output from
  table(dbms_xplan.display('plan_table','st1','typical'));

但我收到错误

错误:无法获取 statement_id 'st1' 的计划

在高并发数据库中检索执行计划的最简单且一致的方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)