2011-09-06 12 views
8

Estamos obteniendo este error esporádicamente. Con el mismo TNS, podemos hacer las conexiones adecuadas a la base de datos. Pero vemos esto en los registros mientras hacemos conexiones algunas veces. Lo siguiente es el seguimiento de la pila. Esta es la conexión db a Oracle desde una máquina Linux y una aplicación Java. Se agradece cualquier ayuda.ORACLE: excepción Io: el adaptador de red no pudo establecer la conexión

java.sql.SQLException: Io excepción: El adaptador de red no se pudo establecer la conexión en oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:112) en oracle.jdbc.driver.DatabaseError .throwSqlException (DatabaseError.java:146) en oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:255) en oracle.jdbc.driver.T4CConnection.logon (T4CConnection.java:387) en oracle.jdbc .driver.PhysicalConnection. (PhysicalConnection.java:439) en oracle.jdbc.driver.T4CConnection. (T4CConnection.java:165) en oracle.jdbc.driver.T4CDriverExtension.getConnection (T4CDriverEx) tension.java:35) en oracle.jdbc.driver.OracleDriver.connect (OracleDriver.java:801) en oracle.jdbc.pool.OracleDataSource.getPhysicalConnection (OracleDataSource.java:297) en oracle.jdbc.pool. OracleDataSource.getConnection (OracleDataSource.java:221) en oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection (OracleConnectionPoolDataSource.java:157) en oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection (OracleConnectionPoolDataSource.java:94) en Oracle. jdbc.pool.OracleImplicitConnectionCache.makeCacheConnection (OracleImplicitConnectionCache.java:1567) en oracle.jdbc.pool.OracleImplicitConnectionCache.getCacheConnection (OracleImplicitConnectionCache.java:478) en oracle.jdbc.pool.OracleImplicitConnection Cache.getConnection (OracleImplicitConnectionCache.java:347) en oracle.jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:404) en oracle.jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:189) en Oracle. jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:165)

+0

Esto no sería un problema de Cisco UCCX, ¿o sí? Estoy teniendo el mismo problema, el mismo mensaje de error, y ocurre esporádicamente. ¿Alguna vez encontraste la solución? – AsherMaximum

+0

Limpiamos el caché de DNS y eso ayudó. –

Respuesta

10

intento siguiente

  1. (obvio) dirección IP es incorrecta - probar PING
  2. El puerto no está abierto, o se bloquea mediante un firewall: prueba TELNET
  3. El oyente DB no se está ejecutando o se está uniendo a una interfaz de red diferentes - de nuevo, TELNET debe confirmar esto (también utilizar el cliente de Oracle herramientas para conectar)
  4. No hay puertos locales están disponibles para la conexión saliente (poco probable): solo si está haciendo miles de conexiones o creando cientos de conexiones nuevas cada minuto.
+0

Gracias, por la respuesta. ¿Los puntos 1 a 4 de estos problemas harán que esto suceda esporádicamente? TELNET funciona. –

0

Compruebe https://forums.oracle.com/forums/thread.jspa?messageID=2540479, tal vez debe cambiar el parámetro de host de archivo listener.ora a su parámetro de host. Puede verificar qué parámetro es su nombre de host en Windows, cmd> nombre de host

+0

Compruébalo por qué? Se trata de un mensaje diferente. – EJP

+0

@EJB Las descripciones de diferentes mensajes no significa que no nos pueden ayudar en diferentes situaciones. Solo me ayudó, eso es todo. –

1

Parece que el grupo de conexiones se queda sin conexiones ... Cuando el búfer de solicitud entrante del escucha DBMS está sobrecargado por muchas solicitudes de conexión simultáneas. Fallará algunos de ellos.

puede hacer que el hilo duerma un poco (de medio segundo a un segundo más o menos) entre las solicitudes de conexión sucesivas. Después de eso, no cierres las conexiones hasta que estén rotas. Guárdelos y vuelva a usarlos.

Cuestiones relacionadas