Estaba importando un esquema “conflictivo” en mi oracle XE cuando de repente me ha dado un error de final del canal de comunicación. Después de eso (o antes quién sabe) el listener se ha caído. Todos los intentos posteriores por levantarlo han fallado.
Yo intentaba esto:
# lsnrctl start
Y el sistema me tiraba esto otro:
TNSLSNR for Linux: Version 10.2.0.1.0 - Production on 11-SEP-2008 12:15:47 Copyright (c) 1991, 2005, Oracle. All rights reserved. El archivo de parámetros del sistema es /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora Mensajes de log escritos en /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/log/listener.log Información de rastreo escrita en /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/trace/listener.trc El nivel de rastreo actual es 0 Iniciado con Pid=3231 Error al recibir de: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE))) TNS-12555: TNS:permiso denegado TNS-12560: TNS:error del adaptador de protocolo TNS-00525: Privilegio insuficiente para la operación Linux Error: 1: Operation not permitted
Y esto así, de repente, sin avisar. Bueno, pues me he metido en los foros, he revisado y revisado la configuración en el fichero listener.ora y he comprobado otro montón de cosas que sugerían los expertos de OTN. Al final la solución la he encontrado en este post. He borrado el contenido de la carpeta /var/tmp/.oracle y luego le he hecho un chown para que perteneciese al usuario oracle y al grupo dba. Después de esto el listener se ha levantado perfectamente.
Al parecer este problema puede suceder cuando levantas la base de datos o el listener como usuario root.