You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle查询仅表分析后首次执行快,后续变慢求技术协助

Oracle查询执行过慢问题排查求助

我正在使用Oracle数据库,遇到查询执行过慢的问题,单次执行耗时近6分钟。
为解决该问题,我分析了查询涉及的所有表,但发现刚完成表分析后首次执行查询速度很快,后续执行则显著变慢,且两种场景下的执行计划(explain plan)存在差异。
我无法定位问题根源,恳请协助排查。

已执行的操作及语句

表分析语句

BEGIN DBMS_STATS.GATHER_TABLE_STATS (
                                        OwnName           => 'USER2',
                                        TabName           => 'Name of specific tables used in this query',
                                        Estimate_Percent  => 0,
                                        Method_Opt        => 'FOR ALL COLUMNS SIZE 1',
                                        Degree            => 4,
                                        Cascade           => TRUE,
                                        No_Invalidate     => FALSE); 
END;

表分析状态检查语句

select table_name, last_analyzed from dba_tables where table_name in ('QM_TABLE_NAME1', 'ETC');

自动统计收集任务状态检查

执行语句:

select dbms_stats.get_prefs('AUTO_TASK_STATUS') from dual;

输出结果:

dbms_stats.get_prefs('AUTO_TASK_STATUS')
----------------------------------------
OFF

执行计划生成语句

select /*+ gather_plan_statistics */ ...  
select * from table(dbms_xplan.display_cursor(9rc0qbr9a5h7a,0,format => 'adaptive allstats last'));
select * from table(dbms_xplan.display_cursor(9rc0qbr9a5h7a,1,format => 'adaptive allstats last'));

慢查询执行计划提示信息

Note

  • 此语句使用了统计反馈

内容的提问来源于stack exchange,提问作者Rudra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 08:26:30