加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ORA-00018 问题处理

发布时间:2020-12-12 14:51:34 所属栏目:百科 来源:网络整理
导读:ORA-00018 问题处理 该错误是由于数据库的session个数不够用导致的。在 11GR2 之前的版本中,session个数是通过设置的process个数计算出来的,计算公式为: sessions = 1.1 * processes + 5 。在之后的版本中,oracle不再完全按照该公式来计算sessions个数。
Parameter type Integer Default value Derived: (1.1 * PROCESSES) + 5 Modifiable No Range of values 1 to 231 Basic Yes

通过三个命令可以查看当前信息:

select value from v$parameter where name = 'sessions';
select count(*) from v$session;
select * from v$resource_limit;

其中V$SESSION 仅包含USER and BACKGROUND sessions,不包含 RECURSIVE sessions,因此不代表系统全部的session个数。

Recursive sessions are an essential part of the normal functioning of the RDBMS. It is impossible to identify every circumstance that would require such sessions,but in general,if a user-initiated operation requires the manipulation of data dictionary objects,then recursive sessions may get created. To take a simple example,say you create a table while logged in as some ordinary user. Behind the scenes this has to insert rows into obj ,tab etc. which are owned by the SYS user. Since a normal user would have no privilege to insert into these objects,a recursive session is created which logs in as SYS.

https://community.oracle.com/thread/2470121
http://www.xifenfei.com/forum/accident/ora-00018-maximum-number-of-sessions-exceeded
http://blog.chinaunix.net/uid-22948773-id-3429457.html
http://www.itpub.net/thread-1800129-1-1.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

ORA-00018 问题处理

该错误是由于数据库的session个数不够用导致的。在11GR2之前的版本中,session个数是通过设置的process个数计算出来的,计算公式为:
sessions = 1.1 * processes + 5。在之后的版本中,oracle不再完全按照该公式来计算sessions个数。

一般的解决办法都是通过调整max process的大小:
alter system set processes=400 scope=spfile;
重新启动后生效。

SESSIONS

Property Description
    推荐文章
      热点阅读