lunes, 24 de agosto de 2009

Listener - Oracle

QUE ES EL LISTENER ORACLE?

TNS Listener es un proceso servidor que provee la conectividad de red con la base de datos Oracle. El listener está configurado para escuchar la conexión en un puerto específico en el servidor de base de datos. Cuando una se pide una conexión a la base de datos, el listener devuelve la información relativa a la conexión. La información de una conexión para una instancia de una base de datos provee el nombre de usuario, la contraseña y el SID de la base de datos. Si estos datos no son correctos se devolverá un mensaje de error.

  • Por defecto el puerto del listener es el 1521
  • El listener no limita el número de conexiones a la base de datos

Toda la información del listener la contiene un archivo denominado listener.ora ( $ORACLE_HOME/network/admin. )

El comando para gestionar el listener es lsnrctl. Mediante este comando podemos:

  • Parar el listener.
  • Ver el estado del listener.
  • Arrancar el listener.
  • Rearrancar el listener.

Para que desde fuera del servidor donde está instalada la base de datos se pueda acceder a la misma el servicio denominado listener ha de estar activado, o como se suele decir, ha de estar escuchando.

Puede pasar que la base de datos esté correctamente levantada y no se pueda conectar desde otros servidores, que también están correctamente configurados (TNSNAMES correcto, etc.). En estos casos puede ser que el listener tenga algún problema, o simplemente que no haya sido iniciado. Consultar el estado del mismo, arrancarlo o pararlo es muy sencillo. Sólo hay que abrir una sesión de línea de comandos (consola, terminal, etc. ) con el usuario con el que se ha instalado la base de datos, y ejecutar el comando lsnrctl con los siguientes parámetros para cada caso:

  • Comprobar su estado: > lsnrctl status
  • Parar el listener: > lsnrctl stop
  • Levantar el listener: > lsnrctl start

Hay que tener en cuenta que cuando se para el listener no se cierran las conexiones que ya están dentro de la base de datos, por lo que una parada momentánea no suele ser muy traumática, sólo se rechazarán las conexiones que intenten entrar mientras el listener esté parado, no ha de afectar a nadie que tenga ya una sesión abierta.


Fuente: MiOracle y DataPrix

4 comentarios:

  1. hola tengo un problema con el lisener lo cual me dice que 'The user is not autorized to execute the requested listener command' ojala puedas ayudarme gracias

    ResponderEliminar
  2. Hola, que tal, muy clara tu explicacion, gracias. tengo un problema, por X motivos el disco de mi PC se daño pero pude recuperar todos mis archivos (en mi trabajo), pero desde ese dia el listener se ha borrado, no aparece en los servicios, no se cual es el proceso para crear uno nuevo, agradeceria tu apoyo.
    Saludos

    ResponderEliminar
  3. Saludos, gracias por tu explicación. ¿Que puede estar sucediendo si el listener de una instancia de la BD se está desconectando? tengo una BD con multiple instancias, pero hay una en específico que cada 20 minutos apróximadamente se desconecta, y al revisar el status del listener no me aparece, ni siquiera como inactiva, sólo no aparece.

    ResponderEliminar