【问题标题】:Oracle parallel_max_servers hintOracle parallel_max_servers 提示
【发布时间】:2025-12-27 06:45:16
【问题描述】:

我正在笔记本电脑上尝试此博客中给出的示例。 https://jonathanlewis.wordpress.com/2013/06/25/system-stats-2/

我得到的值与博客中提到的相同,但是当我使用并行提示时,系统没有使用 DOP,而是生成了相同的旧计划。我不确定我缺少什么或没有设置什么值。

我使用以下语句设置了我的 parallel_max_servers:

alter system set parallel_max_servers=40 scope=both;

当我运行解释语句时:

 explain plan for select /*+ parallel(t1 5) */ max(n1) from t1;

我仍然得到相同的旧计划,就好像没有使用并行性一样。是否需要设置任何其他参数以使我的系统使用并行度。

谢谢!

【问题讨论】:

    标签: sql oracle oracle11g query-optimization


    【解决方案1】:

    使用并行提示,您无需指定表名...只需指定并行数量。像这样:

     select /*+ PARALLEL (4) */ max(n1)
     from t1;
    

    我确认添加表名可以防止在执行计划中发生并行。

    【讨论】: