Pertanyaan sqlplus: kesalahan saat memuat pustaka bersama: libsqlplus.so: tidak dapat membuka file objek bersama: Tidak ada file atau direktori seperti itu


  • echo $PATH memberi saya hasil di bawah ini:

/ home / mayank / bin: / usr / lib / lightdm / lightdm: / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games : / usr / lib / jvm / java-7-oracle / bin: / usr / lib / jvm / java-7-oracle / db / bin: / usr / lib / jvm / java-7-oracle / jre / bin: /usr/lib/oracle/12.1/client/bin

  • echo $ORACLE_HOME menjemput:

/usr/lib/oracle/12.1/client

  • echo LD_LIBRARY_PATH memberi (diatur melalui /etc/bash.bashrc sebelumnya, tetapi sekarang menunjukkan seperti di bawah ini)

LD_LIBRARY_PATH

perbuatan vim untuk .bash_profile menunjukkan hal-hal di bawah ini:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" #
Load RVM into a shell session *as a function*

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    export LD_LIBRARY_PATH

PATH=$PATH:/usr/local/bin
    export PATH

Meskipun pengaturan ld_library_path di file di atas saya masih belum mendapatkan jalur yang benar env meski sudah berlari sudo ldconfig dan kemudian me-reboot komputer saya !!

bantuan apa yang saya cari: 

  • mengatur env vars dengan benar

  • jalankan sqlplus

Pertanyaan yang sama ada superuser, tetapi tidak ada solusi yang diberikan di sana.


12
2018-02-13 14:28


asal


dan ada file libsqlplus.so berada? cobalah untuk menemukannya dengan "sudo updatedb && locate libsqlplus.so" - kemudian beri tahu kami jika Anda menemukannya! - Wolfgang
@WolfgangVogl: hi ... terima kasih atas tanggapan Anda, saat mengeksekusi perintah ur saya mendapatkan ini: /usr/lib/oracle/12.1/client/lib/libsqlplus.so - user246631
@WolfgangVogl: di sini adalah izin hasil chekc jadi file => ls -l /usr/lib/oracle/12.1/client/lib/libsqlplus.so -rw-r--r-- 1 root root 1303050 May 27 2013 /usr/lib/oracle/12.1/client/lib/libsqlplus.so - user246631
Periksa Link ini untuk langkah-langkah terperinci dengan tangkapan layar. - Aniket Thakur


Jawaban:


Seperti yang terlihat di komentar, Perpustakaan Anda terletak di /usr/lib/oracle/12.1/client/lib/, tetapi jalur Anda hanya menyertakan /usr/lib/oracle/12.1/client/bin ... Anda lihat mengapa itu bisa ' t menemukan perpustakaan?

Anda dapat memperluas LD_LIBRARY_PATH dengan direktori /usr/lib/oracle/12.1/client/lib/ (di .profile atau .environment Anda atau .bash_profile atau (jika Anda menginginkannya untuk semua pengguna) di /etc/bash.bashrc file) - saya tidak tahu apakah sqlplus menangani LD_LIBRARY_PATH - coba saja.

Untuk melihat apa yang LD_LIBRARY_PATH tetapkan, Anda harus mengetik:

echo $LD_LIBRARY_PATH

(perhatikan $ jika Anda ingin membaca nilainya!)

Semoga ini membantu!


15
2018-02-13 15:15



hai..saya sangat menghargai Anda mengambil waktu untuk ini, saya diperbarui $LD_LIBRARY_PATH untuk /usr/lib/oracle/12.1/client/lib/ lalu berlari sqlplus tapi masih kesalahan yang sama !! :( - user246631
ada lib libaio1 hilang juga ... terlalu sudo upgrade setelah solusi Anda ... sekarang terpecahkan ... yeyeyeye !! : D - user246631


Ada beberapa file di bawah /usr/lib/oracle/12.1/client/lib/ direktori yang tidak dapat dibaca oleh grup lain.

cd /usr/lib/oracle/12.1/client/lib/
chmod +r *

Maka itu bekerja di lingkungan saya.


1
2017-08-03 18:10