Can not start Oracle after installation
Solution 1
Unfortunately, Oracle does not set the runtime linker path of the sqlplus binary.
As a quick workaround you can set the LD_LIBRARY_PATH
:
$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
On my Cento-OS system the values are:
$ echo -e $ORACLE_HOME'\n'$LD_LIBRARY_PATH
/home/juser/app/juser/product/11.2.0/dbhome_1
/home/juser/app/juser/product/11.2.0/dbhome_1/lib
You can verify if the library path was set correctly via:
$ ldd $ORACLE_HOME/bin/sqlplus
Which should output something like:
[..]
libsqlplus.so => /home/juser/app/juser/product/11.2.0/dbhome_1/lib/libsqlplus.so (0x00007fc58e70f000)
libclntsh.so.11.1 => /home/juser/app/juser/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1 (0x00007fc58c0e3000)
Solution 2
Potential Issue #1
Your issue is most likely being caused by sqlplus' .so libraries not being on the LD_LIBRARY_PATH
. You can set this environment variable so that it's correct:
# /path/to/11g/folder/where/sqlpluslib
$ export LD_LIBRARY_PATH=/path/to/11g/folder/where
Potential Issue #2
Based on your comments on my answer and on @maxschlepzig answer I would surmise that your installation wasn't done correctly. I would suggest doing the installation again. Oracle can be a bit tricky to install.
Here are some instructions specifically geared for 11gR2 and Ubuntu 12.04.
Related videos on Youtube
![Thiyagu ATR](https://i.stack.imgur.com/OZen3.jpg?s=256&g=1)
Comments
-
Thiyagu ATR almost 2 years
I'm using Lenovo G580 under intel i5 third generation with 4GB RAM. I'm trying to install Oracle 11g standard edition
After completing all pre installation and post installation procedures, when I started sqlplus I got an error, something like this:
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
I've searched many websites, but I didn't get clear way to rectify this. What do I need to do to get rid of this error?
-
Thiyagu ATR about 11 yearsya even i thought this might be the problem but this is not.see my ENV variables... export ORACLE_HOME=u01/app/oracle/product/11.2.0/dbhome_1 export PATH=$PATH:/u01/app/oracle/product/11.2.0/dbhome_1/bin export ORACLE_OWNR=oracle export ORACLE_SID=orcl LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
-
maxschlepzig about 11 years@Thiyagu, adding
/lib:/usr/lib
toLD_LIBRARY_PATH
should not be necessary - the dynamic linker lookups by default in those directories. -
Thiyagu ATR about 11 yearsi got like this: linux-gate.so.1 => (0xb76e8000) libsqlplus.so => not found libclntsh.so.11.1 => not found libnnz11.so => not found libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb76c7000) libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb769b000) libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb7680000) libnsl.so.1 => /lib/i386-linux-gnu/libnsl.so.1 (0xb7666000) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74bb000) /lib/ld-linux.so.2 (0xb76e9000)
-
Thiyagu ATR about 11 yearsok...but even-though i removed those links form my ENV,but still 'm getting the error.
-
maxschlepzig about 11 years@Thiyagu, hm, looks like your
ORACLE_HOME
is not set correctly - you have to verify where the needed shared libraries were installed, e.g.find $ORACLE_HOME -name 'libclntsh.so*'
-
Thiyagu ATR about 11 yearsno dude..i've checked oracle_home,that value is correct.. installation path:/u01/app/oracle/product/11.2.0/dbhome_1
-
Thiyagu ATR about 11 yearswhile installing Oralce11g standard edition i faced an error "Install Oracle fails: error in invoking target 'client_sharedlib'" i just skipped it and continue the process.dose this cause an error?
-
maxschlepzig about 11 years@Thiyagu, sure - they are just redundant - unnecessary.
-
maxschlepzig about 11 years@Thiyagu, probably - perhaps the
libclntsh.so
& co. shared library files just weren't copied then. You can verify this via the abovefind
command. -
Thiyagu ATR about 11 years@maxschlepzig:ya i've removed..new ENV is LD_LIBRARY_PATH=$ORACLE_HOME/lib export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
-
Thiyagu ATR about 11 yearsya when i run the above find command i did't get any output!
-
Thiyagu ATR about 11 yearswhen i Googled about the client_sharedlib issue,most of them said software and hardware compatibility.but here not this case..'m using Oracle 32 bit under Ubuntu 32 bit but still 'm getting this error
-
maxschlepzig about 11 years@Thiyagu, if
find
can't find any matching files it outputs nothing. That means that the needed shared library is not there, i.e. it was not installed. No wonder that the dynamic linker can't find it then. Regarding the install error message - since it is a separate issue you should ask a new question for it. A hint: oracle writes a install logfile - perhaps it contains more details. -
Thiyagu ATR about 11 yearsso that installation error cause this problem right?
-
maxschlepzig about 11 years