Oracle 11gR1 dbca – maximum number of sessions exceeded

本文详细解释了在使用Oracle11gR1(11.1.0.6)构建数据库时遇到的并行查询服务器错误及其解决方案,包括设置并行执行可用的最大进程数量参数(parallel_max_servers),以及根据最高并行度调整参数的方法。此外,还提供了避免ORA-00018错误的建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle11g R1 (11.1.0.6)建库的时候遇到以下问题,此问题是BUG:8343487引起的

ORA-12801: error signaled in parallel query server P073.
ORA-00018: maximum number of sessions exceeded
ORA-06512: at “SYS.UTL_RECOMP”, line 629
ORA-06512: at “SYS.UTL_RECOMP”, line 671
ORA-06512: at line 1

如果还没有建库则可通过设置parallel server相关的参数parallel_max_serversparallel_min_servers参数解决此问题,此参数在DBCA建库调用的模板文件中设置,默认位置$ORACLE_HOME/assistants/dbca/templates/xx.dbc文件中。

PARALLEL_MAX_SEVERS参数设置并行执行可用的最大进程数量,该参数的缺省值如下得出:
1.
PGA_AGGREGATE_TARGET >0
PARALLEL_MAX_SERVERS= (CPU_COUNT x PARALLEL_THREADS_PER_CPU x 10)

2.PARALLEL_MAX_SERVERS未设置
PARALLEL_MAX_SERVERS=(CPU_COUNT x PARALLEL_THREADS_PER_CPU x 5)

缺省设置可能并不足够,通常我们根据最高的并行度(DOP)来设置PARALLEL_MAX_SERVERS参数:

2 x DOP x NUMBER_OF_CONCURRENT_USERS

如果已经建库则参考metalink文章ID 749359.1                    

Number of Sessions Exceeded During Database Creation While Executing SYS.UTL_RECOMP [ID 749359.1]


 

修改时间 14-JAN-2010     类型 PROBLEM     状态 PUBLISHED

 

In this Document
  Symptoms
  Cause
  Solution
  References


Applies to:

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 9.2.0.8
Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 11.1.0.8
Information in this document applies to any platform.
Oracle Server Enterprise Edition - Version: 9.2.0.1 to 9.2.0.8
Oracle Server Enterprise Edition - Version: 10.1.0.2 to 11.1.0.8

Symptoms

During the installation of  Oracle 11G, selected the option to create a new "General" database.  During the database creation,  encountered the following:

# pg postDBCreation.log
Database closed.
Database dismounted.
ORACLE instance shut down.
ORACLE instance started.
Total System Global Area 801939456 bytes
Fixed Size 2099064 bytes
Variable Size 197589128 bytes
Database Buffers 524288000 bytes
Redo Buffers 77963264 bytes
Database mounted.
Database opened.
utl_recomp_begin: 10:55:57
BEGIN utl_recomp.recomp_serial(); END;

*
ERROR at line 1:
ORA-12801: error signaled in parallel query server P023
ORA-00018: maximum number of sessions exceeded
ORA-06512: at "SYS.UTL_RECOMP", line 629
ORA-06512: at "SYS.UTL_RECOMP", line 671
ORA-06512: at line 1


It is also possible to receive ORA-00020 errors in this scenario as well..

Cause

PARALLEL_MAX_SERVERS was set to 5.   Sessions exhausted due to parallelism. 

UTL_RECOMP spawned sessions and processes to parallelize completion and consumes sessions beyond the default. 
This problem is due to BUG:8343487 - UTLRP.SQL EXECUTING IN PARALLEL REGARDLESS OF SETTING.

Solution

Try one or both of the following:
1.  Before creating database, set parallel parameters to zero.
     PARALLEL_MAX_SERVERS=0  

     PARALLEL_MIN_SERVERS =0
2.  Set number of sessions to a higher number than default,  i.e.,  SESSIONS=500

References

BUG:8343487 - UTLRP.SQL EXECUTING IN PARALLEL REGARDLESS OF SETTING

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值