ORA-0020: 超出最大进程数 (150)

ORA-0020: Maximum number of processes (150) exceeded

我尝试登录 sql plus。当我输入用户名和密码作为系统时,它会显示消息最大进程数 (150) 已超出。我该如何解决这个错误。

如果您是 DBA 或拥有 DBA 权限,您可以按以下方式执行此操作:

在 Oracle 的数据库级别增加 processes/sessions 的数量的步骤如下

  1.  Log on to the database as system administrator

• In SQL Plus enter: "connect / as sysdba"

  2. Set the number of processes to be desired value <num_processes>

• In SQL Plus "alter system set processes={num_processes} scope=spfile"

  3. Unset the number of sessions to remove the default session limit 

• In SQLPlus "alter system reset sessions scope=spfile sid='*' "

  4. Shutdown the database 

• In SQL Plus "shutdown immediate"

  5. Startup the database  

• In SQL Plus "startup"

   6. Check the changes have taken effect. 

• In SQL Plus "show parameter sessions" and "show parameter processes"

或运行查询select value from v$parameter where name = 'processes'

Oracle documentation

1.Login 作为 sysdba

sqlplus / as sysdba

2.Check 当前参数设置

sql> show parameter sessions
sql> show parameter processes
sql> show parameter transactions

3.If 您计划增加 "PROCESSES" 参数您还应该计划增加 "sessions and "transactions" 参数 确定这些参数值的基本公式如下:

processes=x
sessions=x*1.1+5
transactions=sessions*1.1

4.These参数不能在内存中修改。您只需修改 spfile (scope=spfile) 并弹回实例。

sql> alter system set processes=500 scope=spfile;
sql> alter system set sessions=555 scope=spfile;
sql> alter system set transactions=610 scope=spfile;
sql> shutdown abort
sql> startup