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 |
---|---|
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ÿ