sqlplus: error al cargar bibliotecas compartidas: libsqlplus.so: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio

sqlplus: error al cargar bibliotecas compartidas: libsqlplus.so: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
  • echo $PATHme da el siguiente resultado:

/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/cliente/bin

  • echo $ORACLE_HOMEbusca:

/usr/lib/oracle/12.1/cliente

  • echo LD_LIBRARY_PATHda (configurado /etc/bash.bashrcanteriormente, pero ahora se muestra como se muestra a continuación)

LD_LIBRARY_PATH

haciendo vimpara .bash_profilelos espectáculos debajo del conjunto de cosas:

[[ -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

¡A pesar de configurar el ld_library_patharchivo anterior, todavía no obtengo la ruta correcta a envpesar de ejecutar sudo ldconfigy luego reiniciar mi máquina!

que ayuda estoy buscando:

  • configurar las variables env correctamente

  • ejecutar sqlplus

Existe la misma preguntasuperusuario, pero allí no se da ninguna solución.

Respuesta1

Como se ve en los comentarios, su biblioteca está ubicada en /usr/lib/oracle/12.1/client/lib/, pero su ruta solo incluye /usr/lib/oracle/12.1/client/bin... ya ve por qué no ¿No encuentras la biblioteca?

Puede expandir su LD_LIBRARY_PATH con el directorio /usr/lib/oracle/12.1/client/lib/ (en su .profile o .environment o .bash_profile o (si lo desea para todos los usuarios) en /etc/bash.bashrc file) - No sé si sqlplus se encarga de LD_LIBRARY_PATH - solo inténtalo.

Para ver qué está configurado LD_LIBRARY_PATH, debe escribir:

echo $LD_LIBRARY_PATH

(¡tenga en cuenta el $ si desea leer el valor!)

¡Espero que esto ayude!

Respuesta2

Hay algunos archivos en el /usr/lib/oracle/12.1/client/lib/directorio que otros grupos no pueden leer.

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

Entonces funciona en mi entorno.

información relacionada