oracle数据库连接不上,提示ora-00020错误(ora-00020 maximum number of processes (150) exceeded),原因是连接数超出了当前数据库设置的参数值。
解决过程如下:
1.查看当前连接到数据库的客户端进程,并杀掉无用的客户端进程
ps -ef | grep ora_
kill -9 XXXX
3.登录数据库
sqlplus / as sysdba
4. 查看数据库当前进程和会话参数值
show parameter processes;--当前配置的process
select count(*) from v$process;--当前一共有多少process
show parameter sessions; --当前配置的会话数。
select count(*) from v$session;--当前会话数
5. 查询并杀掉异常的会话
select sid,serial#,username,program,machine,status from v$session;
alter system kill session '51,47';--51是sid 47是serial#
6. 设置process
SQL> alter system set processes=500 scope=spfile;
SQL> shutdown immediate(重启使参数生效)
SQL> startup
SQL> create pfile from spfile;
参考链接:http://blog.itpub.net/519536/viewspace-713198/