Last week our Unix Adminstrators has moved the data related to our Oracle database from a UFS filesystem to a ZFS filesystem on Solaris.
Once the move is completed, when we tried to start the databases and listeners on the server, the databases started normally but we got problems starting the Listeners.
The Problem:
DBA TEST ZONE> lsnrctl start LISTENER_ORA8
LSNRCTL for Solaris: Version 8.0.6.0.0 - Production on 07-SEP-09 10:52:35
(c) Copyright 1999 Oracle Corporation. All rights reserved.
Starting /usr/app/oracle/product/8.0.6/bin/tnslsnr: please wait...
TNSLSNR for Solaris: Version 8.0.6.0.0 - Production
System parameter file is /usr/app/oracle/product/8.0.6/network/admin/listener.ora
Log messages written to /usr/app/oracle/product/8.0.6/network/log/listener_ora8.log
Attempted to listen on: (DESCRIPTION=(CONNECT_TIMEOUT=10)(ADDRESS=(PROTOCOL=IPC)(KEY=test8)))
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00516: Permission denied
Solaris Error: 13: Permission denied
The Fix:
The Unix permissions for the hidden directory /tmp/.oracle should be:
drwxrwxrwx
Change the permissions on the .oracle directory:
DBA TEST ZONE> ls -lad /tmp/.oracle /var/tmp/.oracle
/tmp/.oracle: No such file or directory
drwxr-xr-x 2 root root 2 Aug 21 02:05 /var/tmp/.oracle
give full permisions to this file:
DBA TEST ZONE> ls -lad /var/tmp/.oracle
drwxrwxrwx 2 root root 2 Aug 21 02:05 /var/tmp/.oracle
Now again retried to start the Listener:
DBA TEST ZONE> lsnrctl start LISTENER_ORA8
LSNRCTL for Solaris: Version 8.0.6.0.0 - Production on 07-SEP-09 10:57:49
(c) Copyright 1999 Oracle Corporation. All rights reserved.
Starting /usr/app/oracle/product/8.0.6/bin/tnslsnr: please wait...
TNSLSNR for Solaris: Version 8.0.6.0.0 - Production
System parameter file is /usr/app/oracle/product/8.0.6/network/admin/listener.ora
Log messages written to /usr/app/oracle/product/8.0.6/network/log/listener_ora8.log
Listening on: (ADDRESS=(PROTOCOL=ipc)(DEV=8)(KEY=test8))
Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=13)(HOST=10.52.51.61)(PORT=1526))
Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=test8))
STATUS of the LISTENER
------------------------
Alias LISTENER_ORA8
Version TNSLSNR for Solaris: Version 8.0.6.0.0 - Production
Start Date 07-SEP-09 10:57:52
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /usr/app/oracle/product/8.0.6/network/admin/listener.ora
Listener Log File /usr/app/oracle/product/8.0.6/network/log/listener_ora8.log
Services Summary...
test8 has 1 service handler(s)
The command completed successfully
Look in:
Subscribe to:
Post Comments (Atom)
8 comments:
really helpful for me
Thank you!
Thank you. found the solution here after hitting a few roadblocks. I had multiple DB ORACLE_HOME using different unix ID..
I had a "t" sticky bit set and I did not notice. Once I reset the /var/tmp/.oracle permissions (777) it worked fine. thx!
drwxrwxrwt <- t was set
Thanks master!
Thank You
Thank You very much
Post a Comment