`

Ora-00018超出最大会话数和Ora-00020超出最大进程数错误的解决方法(转)

 
阅读更多
Ora-00018超出最大会话数和Ora-00020超出最大进程数错误的解决方法-技术交流
Ora-00018 Maximum number of sessions exceeded超出最大会话数
Oracel默认Process的值为150,导致实际的Session值会超过Oracle的设置值(Session的数量是Process*1.1+5),所以会出错。

解决方法:
建议将Process的值往大了改。

查看当前系统中的Process

SQL> show parameter processes;

NAME                                 TYPE        VALUE
------------------------------------ ----------- -------
aq_tm_processes                      integer     1
db_writer_processes                  integer     1
job_queue_processes                  integer     10
log_archive_max_processes            integer     2
processes                            integer     150

SQL> show parameter sessions;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------
java_max_sessionspace_size           integer     0
java_soft_sessionspace_limit         integer     0
license_max_sessions                 integer     0
license_sessions_warning             integer     0
logmnr_max_persistent_sessions       integer     1
mts_sessions                         integer     165
sessions                             integer     170
shared_server_sessions               integer     165


将Process设置为500

SQL> alter system set processes=500 scope=spfile;

系统已更改。

重新启动数据库使改动生效。




SQL> shutdown immediate;

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。



再次查看,确实改过来了。

SQL> show parameter processes;

NAME                                 TYPE        VALUE
------------------------------------ ----------- -------
aq_tm_processes                      integer     1
db_writer_processes                  integer     1
job_queue_processes                  integer     10
log_archive_max_processes            integer     2
processes                            integer     500



SQL> show parameter sessions;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------
java_max_sessionspace_size           integer     0
java_soft_sessionspace_limit         integer     0
license_max_sessions                 integer     0
license_sessions_warning             integer     0
logmnr_max_persistent_sessions       integer     1
mts_sessions                         integer     550
sessions                             integer     555
shared_server_sessions               integer     550

注意:按照上面所述方法修改后如果还有问题的话请参照如下方法。
如果报:Ora-00020 Maximum Number of processes(500) execeed超出最大进程数的错误,证明问题并不是那么简单
重新启动数据库后
SQL> show user

USER ?S "SYS"

SQL> select count(*) from v$session;

  COUNT(*)

----------

       496



SQL> select count(1) from v$session where status = 'INACTIVE';

  COUNT(1)

----------

         486

好多的Session和好多的无效Session。

解决方法:在Oracle的管理控制台点击看看,依次展开网络-->数据库-->服务名-->例程-->会话,在右面的无效Session双击看看到底是什么东西!!!
可能是被某些应用程序所占用,需要检查程序的逻辑性。然后修改程序后问题搞定!!

分享到:
评论

相关推荐

    《转载》ora-00020超出最大进程数

    在Oracle数据库系统中,"ORA-00020 超出最大进程数"是一个常见的错误,通常出现在用户尝试创建新的会话或进程时,但数据库已经达到了其配置的最大进程限制。这个错误可能会影响到数据库的正常运行,阻止用户执行查询...

    oracle错误代码大全(超详细)

    ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ...

    Oracle错误码大全

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存;无法分离会话 ORA-00024: 单一进程模式下不允许从多...

    oracle超出最大连接数方案

    超出最大会话数和Ora-00020超出最大进程数错误的解决方法 Ora-00018 Maximum number of sessions exceeded超出最大会话数

    oracle错误大全一览表

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存;无法分离会话 ORA-00024: 单一进程模式下不允许从多...

    ORACLE错误码大全

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存;无法分离会话 ORA-00024: 单一进程模式下不允许从多...

    oracle错误一览表

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存;无法分离会话 ORA-00024: 单一进程模式下不允许从多...

    Oracle错误代码大全

    * ORA-00020: 超出最大进程数 * ORA-00021: 会话附属于其它某些进程;无法转换会话 * ORA-00022: 无效的会话 ID;访问被拒绝 * ORA-00023: 会话引用进程私用内存;无法分离会话 * ORA-00024: 单一进程模式下不允许从...

    Oracle SQLCODE整理

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ................................................ .....................................

    oracle 错误代码一览表

    3. ORA-00018: 超出最大会话数 这种错误发生在数据库中的会话数超过了允许的最大值。 4. ORA-00019: 超出最大会话许可数 这种错误发生在数据库中的会话许可数超过了允许的最大值。 5. ORA-00020: 超出最大进程数 ...

    Oracle error code 大全

    ORA-00020:超出最大进程数 ORA-00021:会话附属于其它某些进程;无法转换会话 ORA-00072:进程号必须介于 1 和 之间 ORA-00073:命令 介于 和 个参数之间时使用 ORA-00074:未指定进程 ORA-00075:在此例程未找到...

    Oracle 错误大全

    ORA-00018: 超出最大会话数 错误说明:超出了最大会话数,无法创建新的会话。 解决方法:检查当前会话数,关闭不必要的会话,以释放资源。 ORA-00019: 超出最大会话许可数 错误说明:超出了最大会话许可数,无法...

    oracle数据库-错误编码大全

    - ORA-00020: 超出最大进程数。Oracle数据库的进程数超过了实例中设置的PGA_AGGREGATE_LIMIT参数值。这可能需要调整PGA_AGGREGATE_LIMIT或加大系统资源。 - ORA-00021: 会话附属于其它某些进程;无法转换会话。在...

    oracle常见错误及解决方法

    3. ORA-00018, ORA-00019, ORA-00020: 超出最大会话或进程数 这些错误表示数据库实例达到最大允许的会话或进程数量。解决方案是关闭不必要的会话,或者增加相应的参数(如SESSIONS_PER_USER, PROCESSES)配置。 4....

    Oracle报错信息速查

    ORA-00018 错误表示超出最大会话数。当用户尝试创建新会话时,Oracle 数据库将检查当前会话数是否超出限制,如果超出,则返回 ORA-00018 错误。 四、超出最大会话许可数(ORA-00019) ORA-00019 错误表示超出最大...

    ORACLE运行报错.doc

    * ORA-00020: 超出最大进程数 (): 这个错误通常发生在超过了 ORACLE 的最大进程数时。 * ORA-00021: 会话附属于其它某些进程;无法转换会话: 这个错误通常发生在尝试转换会话时。 * ORA-00022: 无效的会话 ID;访问...

    2号店 商城 系统

    ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存;无法分离会话 ORA-00024: 单一进程模式下不允许从多...

    Oracle报错ORA-12516

    1. **连接数超出限制**:当数据库连接的数量超过了配置的最大值时,新的连接请求将被拒绝,从而导致ORA-12516错误。 2. **配置不一致**:客户端使用的协议与服务器端支持的协议不一致。 3. **资源不足**:服务器上的...

    管理信息化ORACLEOracle——错误一览表任务用.pdf

    5. ORA-00020: 超出最大进程数 - 数据库系统中的并发进程数量超过了允许的最大值,这可能需要调整初始化参数`PROCESSES`。 6. ORA-00021: 会话附属于其它某些进程;无法转换会话 - 当尝试改变会话状态时,发现会话...

    oracle报错大全(珍藏版)

    #### ORA-00018: Instance Terminated by Operating System 系统进程被操作系统终止时触发。这可能是因为操作系统检测到了某种异常情况,如内存不足、系统负载过高等。 #### ORA-00019: Operating System Resource ...

Global site tag (gtag.js) - Google Analytics