ora00020: maximum number of processes (150) exeeded

ora00020: maximum number of processes (150) exeeded

原因:  1.因为和数据库的连接超过的预设(150),所以数据库罢工了

     2.应用程序在使用数据库连接池时,使用完成后没有及时关闭,或者不正常的关闭导致数据库的Process处于inactive状态

修改:

--1.连接数据库
sqlplus 账号/密码 as sysdba
--如果无法登录,添加参数 -prelim 
sqlplus -prelim 账号/密码 as sysdba

--2.查看进程数
show parameter proce

--3.修改processes
alter system set processes=500 scope=spfile;
create pfile from spfile;  --重要

--4.再次查看进程数,现在已经修改为500
show parameter proce

--5.重启
shutdown immediate
startup

--6.完成

 

其他:

select count(*) from v$process --当前的连接数
select value from v$parameter where name = 'processes' --数据库允许的最大连接数

--查看当前有哪些用户正在使用数据
SELECT osuser, a.username,cpu_time/executions/1000000||'s', sql_fulltext,machine 
from v$session a, v$sqlarea b
where a.sql_address =b.address order by cpu_time/executions desc;

 

posted @ 2020-11-18 15:43  小小小光子  阅读(604)  评论(0编辑  收藏  举报