Can not start Oracle after installation

10,671

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.

Share:
10,671

Related videos on Youtube

Thiyagu ATR
Author by

Thiyagu ATR

A learner A observer A developer!

Updated on September 18, 2022

Comments

  • Thiyagu ATR
    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
    Thiyagu ATR about 11 years
    ya 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
    maxschlepzig about 11 years
    @Thiyagu, adding /lib:/usr/lib to LD_LIBRARY_PATH should not be necessary - the dynamic linker lookups by default in those directories.
  • Thiyagu ATR
    Thiyagu ATR about 11 years
    i 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
    Thiyagu ATR about 11 years
    ok...but even-though i removed those links form my ENV,but still 'm getting the error.
  • maxschlepzig
    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
    Thiyagu ATR about 11 years
    no dude..i've checked oracle_home,that value is correct.. installation path:/u01/app/oracle/product/11.2.0/dbhome_1
  • Thiyagu ATR
    Thiyagu ATR about 11 years
    while 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
    maxschlepzig about 11 years
    @Thiyagu, sure - they are just redundant - unnecessary.
  • maxschlepzig
    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 above find command.
  • Thiyagu ATR
    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
    Thiyagu ATR about 11 years
    ya when i run the above find command i did't get any output!
  • Thiyagu ATR
    Thiyagu ATR about 11 years
    when 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
    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
    Thiyagu ATR about 11 years
    so that installation error cause this problem right?
  • maxschlepzig
    maxschlepzig about 11 years