Hi,
Sometimes You can get “TNS-00527: Protocol Adapter not loadable ” error.
Details of error are as follows.
TNS-00527: Protocol Adapter not loadable
Cause: On some platforms (for example OS/2) protocol adapters are loaded at run-time. If the shared library
(or DLL) for the protocol adapter is missing or one of its supporting libraries is missing, then this error is returned.
Action: For further details, turn on tracing and reexecute the operation. The trace file will have the name
of the shared library (or DLL) that could not be loaded.
lsnrctl start LISTENER Starting tnslsnr: TNS-12557:TNS:protocol adapter not loadable TNS-12560:TNS:protocol adapter error TNS-00527:Protocol Adapter not loadable
mkdir /var/tmp/.oracle chmod 01777 /var/tmp/.oracle chown root /var/tmp/.oracle chgrp root /var/tmp/.oracle
then add it and try to start Listener again.
[oracle@msdbadm01 ~]$ lsnrctl start LISTENER
Check listener status as follows, it is listening the Database and its service as follows.
[oracle@msdbadm01 ~]$ lsnrctl status LSNRCTL for Linux: Version 18.0.0.0.0 - Production on 28-APR-2020 15:44:29 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 18.0.0.0.0 - Production Start Date 25-MAR-2020 20:34:20 Uptime 33 days 19 hr. 10 min. 8 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/grid/network/admin/listener.ora Listener Log File /u01/app/grid/diag/tnslsnr/vfxidb01/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.63.34)(PORT=1521))) Services Summary... Service "+APX" has 1 instance(s). Instance "+APX1", status READY, has 1 handler(s) for this service... Service "+ASM" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_DATA" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_RECO" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "MSDB" has 1 instance(s). Instance "MSDB1", status READY, has 1 handler(s) for this service... Service "MSDBXDB" has 1 instance(s). Instance "MSDB1", status READY, has 1 handler(s) for this service... [oracle@msdbadm01 ~]$
Or Clear the /var/tmp/.oracle (Linux or Solaris) or (on AIX), /tmp/.oracle directory and start from fresh:
Stop all listeners
Remove the /var/tmp/.oracle or /tmp/.oracle directory, e.g. run the following from the root account as follows.
rm -rf /var/tmp/.oracle
Check the listener(s) configuration contains unique keys specified for each IPC endpoint and each listener
Start the listener(s) from the normal Oracle OS user.
Clearing the /var/tmp/.oracle or /tmp/.oracle directory will force the listeners to recreate the socket files from fresh, each with its own correct ownership.
For Windows environment:
the new environmental variables are set for window and old services will become invalid.
So we need to create new windows services for the listener.
1) Take a backup of the listener.ora file .
2) Stop the listener via lsnrctl stop LISTENER.
3) Open services.msc and stop the listener service ( OracleOraxxxxxListener ) manually .
or
open command prompt as administrator :
net stop <service name>
4) Use Net Manager to delete the listener or move the listener.ora file to another location manually.
5) Start –> Run –> Type Services.msc
6) Select the listener service or note down the listener service name and delete the listener service via command prompt as administrator.
( sc delete <service-name> ) or Delete the listener services – sc delete < Listener Service Name >
7) Create a new listener.ora file with simple listener configuration.
Example:
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = host name)(PORT = 1521)) ) )
then run the lsnrctl start listener command.
Do you want to learn more details about RMAN, then read the following articles.
https://ittutorial.org/rman-backup-restore-and-recovery-tutorials-for-beginners-in-the-oracle-database/