ORA-00020
data
resource_error
ai_generated
true
Oracle ORA-00020: maximum number of processes (150) exceeded
ID: data/oracle-too-many-files-open
92%Fix Rate
90%Confidence
1Evidence
2023-04-05First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| Oracle Database 19c | active | — | — | — |
| Oracle Database 21c | active | — | — | — |
| Oracle Database 12c | active | — | — | — |
Root Cause
Oracle database's processes parameter limits the total number of OS processes (including connections and background processes). When connection pools or application servers open more connections than the limit, new connections are rejected.
generic中文
Oracle数据库的processes参数限制了操作系统进程总数(包括连接和后台进程)。当连接池或应用服务器打开的连接数超过限制时,新连接将被拒绝。
Official Documentation
https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/ORA-00020.htmlWorkarounds
-
95% success Increase the processes parameter in the SPFILE and restart the database to allow more connections.
Increase the processes parameter in the SPFILE and restart the database to allow more connections.
-
80% success Reduce connection pool size in the application to stay within the current limit, e.g., set max connections to 100 in HikariCP.
Reduce connection pool size in the application to stay within the current limit, e.g., set max connections to 100 in HikariCP.
中文步骤
Increase the processes parameter in the SPFILE and restart the database to allow more connections.
Reduce connection pool size in the application to stay within the current limit, e.g., set max connections to 100 in HikariCP.
Dead Ends
Common approaches that don't work:
-
99% fail
The processes parameter remains unchanged, so the same limit applies after restart.
-
90% fail
Sessions depend on processes; without increasing processes, the session limit is unreachable.