sql >> Base de Datos >  >> RDS >> Oracle

java.sql.SQLException:el oyente rechazó la conexión con el siguiente error:ORA-12519, TNS:no se encontró un controlador de servicio apropiado

Su aplicación de subprocesos múltiples está abriendo demasiadas conexiones/sesiones. Por lo tanto, el oyente está cayendo y bloqueando nuevas conexiones por un tiempo.

Verifique primero el uso de recursos de su base de datos:

SELECT * FROM v$resource_limit WHERE resource_name IN ('processes','sessions');

Verifique si su MAX_UTILIZATION para sus Procesos o Sesiones se está acercando demasiado al LIMIT_VALUE. En caso afirmativo, debe:

  1. Utilice la agrupación de conexiones de base de datos para compartir Connection objetos entre hilos. O,
  2. Aumente la cantidad de procesos/sesiones que Oracle puede atender simultáneamente.

En realidad, siempre se debe realizar la Agrupación de conexiones (n.º 1). De lo contrario, una aplicación no puede escalar verticalmente. Compruebe Apache Commons DBCP para detalles. Para el n.° 2, abra una nueva sesión de SQL*Plus como SISTEMA y ejecute:

ALTER system SET processes=<n-as-per-number-of-threads> scope=spfile;

para aumentar la concurrencia de back-end. Luego REINICIA la base de datos. ¡IMPORTANTE!