3. ORA-00020: maximum number of processes (%s) exceeded
详细原因
初始化参数 processes 设置过小,业务连接、备份、定时任务、归档、后台进程总和达到上限,新连接直接拒绝。
默认值通常 150,并发高业务极易触发。
完整排查 & 解决
- 查看当前参数与进程占用
show parameter processes; select count(*) from v$process;
修改参数(spfile 生效需重启)
alter system set processes=800 scope=spfile; shutdown immediate; startup;
临时应急:杀掉无用空闲进程释放连接
select sid,serial#,username,status from v$session where status='INACTIVE'; alter system kill session '12,345' immediate;
补充:sessions=processes*1.1+5,修改 processes 会自动同步 sessions。