ORA-00020: maximum number of processes (N) exceeded
OracleNe demek?
Örneğe ait süreç sayısı, PROCESSES başlatma parametresiyle tanımlanan üst sınıra ulaştı ve yeni bağlantı/süreç oluşturulamıyor. Yeni oturumlar bağlanamaz; hatta yönetici bile bağlanamayabilir.
Neden olur?
Uygulama bağlantı havuzunun aşırı büyümesi, kapanmayan (sızan) bağlantılar, beklenenden fazla eşzamanlı kullanıcı ya da PROCESSES parametresinin düşük ayarlanması sınırın aşılmasına yol açar. Bazen asılı kalan arka plan işleri ya da paralel sorgu süreçleri de tüketir.
Nasıl çözülür?
sqlplus -prelim / as sysdba ile bağlanılabilir ancak bu bağlantı SQL çalıştıramaz (v$session sorgulanamaz); yalnızca oradebug (ör. hanganalyze) ve SHUTDOWN ABORT için kullanılır. Yer açmak için işletim sisteminde atıl uygulama sunucu süreçlerini (ps -ef | grep 'LOCAL=NO') dikkatle sonlandırın; ardından normal SYSDBA bağlantısıyla v$session/v$process üzerinden sızan oturumları bulup ALTER SYSTEM KILL SESSION ile kapatın. Kalıcı çözüm için PROCESSES değerini artırıp örneği yeniden başlatın (SESSIONS spfile'da açıkça ayarlanmışsa yeniden türetilmez, onu da güncelleyin). Uygulama tarafında bağlantı havuzu üst sınırını ve idle bağlantı temizliğini düzeltin.
Aynı motorda diğer kayıtlar
- ORA-04061existing state of package/procedure has been invalidated
- ORA-01466unable to read data - table definition has changed
- ORA-08176consistent read failure; rollback data not available
- ORA-01113file N needs media recovery
- ORA-02393exceeded call limit on CPU usage
- ORA-12801error signaled in parallel query server Pnnn