Monday, November 11, 2013

TNS-12555: TNS:permission denied | TNS-12560: TNS:protocol adapter error | TNS-00525: Insufficient privilege for operation | Linux Error: 1: Operation not permitted

Issue: while starting the listener we were getting the below error.

[oracle@linux01 ~]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 11-NOV-2013 01:53:59

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Starting /app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
System parameter file is /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Log messages written to /app/oracle/diag/tnslsnr/linux01/listener/alert/log.xml
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12555: TNS:permission denied
 TNS-12560: TNS:protocol adapter error
  TNS-00525: Insufficient privilege for operation
   Linux Error: 1: Operation not permitted

Listener failed to start. See the error message(s) above...

The contents of the listener.ora file

[oracle@linux01 ~]$ cd $ORACLE_HOME
[oracle@linux01 admin]$ cat listener.ora
# listener.ora Network Configuration File: /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = linux01)(PORT = 1521))
    )
  )

Solution 1: Recreate the directory /var/tmp/.oracle as mentioned below & then start the listener.

[oracle@slc00ryy ~]# cd /var/tmp
[oracle@slc00ryy tmp]# ls -la
drwxrwxrwt   2 root     oinstall  4096 Nov 11 02:00 .oracle

[oracle@slc00ryy tmp]# mv .oracle .oracle.orig
[oracle@slc00ryy tmp]# mkdir .oracle
[oracle@slc00ryy tmp]# chmod 01777 .oracle
[oracle@slc00ryy tmp]# chown -R root:oinstall .oracle
[oracle@slc00ryy tmp]# chgrp root .oracle
  
Solution 2: Change the KEY in the listener.ora file to EXTPROC0 (changed 1521 to 0 (zero)) and started the listener. It worked.

[oracle@linux01 admin]$ vi listener.ora
[oracle@linux01 admin]$ cat listener.ora
# listener.ora Network Configuration File: /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
      (ADDRESS = (PROTOCOL = TCP)(HOST = linux01)(PORT = 1521))
    )
  )

[oracle@linux01 admin]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 11-NOV-2013 01:56:15
Copyright (c) 1991, 2009, Oracle.  All rights reserved.
Starting /app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 11.2.0.1.0 - Production
System parameter file is /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Log messages written to /app/oracle/diag/tnslsnr/linux01/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=linux01)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date                11-NOV-2013 01:56:15
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File         /app/oracle/diag/tnslsnr/linux01/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=linux01)(PORT=1521)))
The listener supports no services
The command completed successfully

6 comments: