2015-08-13 24 views
6

ho scaricato Immediata Oracle Client versione 11.2.0.4.0 (basic, sqlplus, file di devel .rpm) da Oracle website in Ubuntu. Dopo aver convertito .rpm in .deb utilizzando alien, l'ho installato, basic prima e sqlplus e l'ultimo devel.libsqlplus.so: connot aprire il file oggetto condiviso: Nessun file o directory, anche se PATH contiene il percorso

E quindi ho provato a eseguire sqlplus.

ma è dicendo sqlplus64: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

Anche se la mia PATH contiene il PATH.

Il seguente mostra il mio PATH e la posizione di libsqlplus.so.

[email protected]:~$ sudo find/-name libsqlplus.so 
/usr/lib/oracle/11.2/client64/lib/libsqlplus.so 

[email protected]:~$ echo $PATH 
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/sangmin/eclipse:/usr/lib/oracle/11.2/client64/lib:/usr/lib/oracle/11.2/client64 

risposta

13

Testare il client Oracle. L'utente o sqlplus o sqlplus64 a seconda della piattaforma. Nel mio caso, ho usato:

$ sqlplus64 username/[email protected]//dbhost:1521/SID 

Se si ottiene il messaggio successivo, allora avete bisogno di istruire sqlplus di utilizzare la corretta libray:

sqlplus64: errore durante il caricamento delle librerie condivise: libsqlplus.so : impossibile aprire il file oggetto condiviso: nessun file o directory di questo tipo.

Per fare ciò, individuare innanzitutto la posizione delle librerie Oracle. Il percorso dovrebbe essere qualcosa come /usr/lib/oracle/<version>/client(64)/lib/. Nel mio caso (Ubuntu 14.04 LTS, Intel su 64-bit), era /usr/lib/oracle/11.2/client64/lib/.

Ora aggiungere questo percorso all'elenco delle librerie di sistema. Creare e modificare un nuovo file:

$ sudo nano /etc/ld.so.conf.d/oracle.conf 

Aggiungere all'interno del percorso:

/usr/lib/oracle/11.2/client64/lib/ 

Esegui ora l'utilità linker dinamico binding di runtime:

$ sudo ldconfig 

Se i rendimenti sqlplus di un mancante libaio.so.1 file, eseguire:

$ sudo apt-get install libaio1 

Per altri errori durante il tentativo di eseguire sqlplus, consultare la pagina della guida di Ubuntu.

+0

Oracle installa Le istruzioni di montaggio alla base di http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html non hanno suggerito la necessità di modificare l'elenco delle librerie di sistema. Grazie per questo. – mysteryegg

+0

non c'è 'oracle.conf' in'/etc/ld.so.conf.d/' – Toolkit

0

Potenza pena di verificare il problema di autorizzazioni: sqlplus: error while loading shared libraries

permesso: voglio sottolineare l'importanza di autorizzazioni per "sqlplus".

  1. Per ogni "Altro" utente UNIX diversa dal proprietario/Gruppo di essere in grado di eseguire sqlplus e accedere a un database Oracle, lettura/permessi di esecuzione sono richiesti (rx) per questi 4 directory:

    $ ORACLE_HOME/bin, $ ORACLE_HOME/lib, $ ORACLE_HOME/oracore, $ ORACLE_HOME/sqlplus

  2. Ambiente. Impostare quelli correttamente:

    A. ORACLE_HOME (esempio: ORACLE_HOME=/u01/app/oranpgm/product/12.1.0/PRMNRDEV/)

    B. LD_LIBRARY_PATH (esempio: ORACLE_HOME=/u01/app/oranpgm/product/12.1.0/PRMNRDEV/lib)

    C. ORACLE_SID

    D. PATH

    export PATH="$ORACLE_HOME/bin:$PATH" 
    
+0

È utile includere una spiegazione del tuo consiglio, piuttosto che un semplice collegamento. –