If you encounter an error message like “lsnrctl: error while loading shared libraries: /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1: cannot open shared object file: No such file or directory” when using the Oracle lsnrctl command, it means that the required shared library file is missing or not found in the system.
Here are the steps you can take to resolve this issue:
- Check if the missing library file exists in the specified path:
/u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
- If the file is missing or not found in the path, check if it is present in the Oracle home directory. The library file should be located in the
$ORACLE_HOME/lib
directory. - If the file is present in the Oracle home directory, make sure that the
$ORACLE_HOME
environment variable is set correctly. You can set it by running the following command:export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
Replace the path with the correct Oracle home directory path.
- If the environment variable is set correctly, check if the library file has the correct permissions. You can check the file permissions by running the following command:
ls -l /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
If the file permissions are incorrect, you can set them by running the following command:
chmod 755 /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
- If the issue persists, check if the LD_LIBRARY_PATH environment variable is set correctly. It should include the
$ORACLE_HOME/lib
directory. You can set it by running the following command:export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
- Finally, try running the lsnrctl command again.
lsnrctl
If the issue still persists, you may need to check if the library file is corrupted or reinstall the Oracle software.