Instalar el cliente instantáneo de Oracle

Instalar el cliente instantáneo de Oracle

Estoy intentando que Oracle SQL Developer funcione en 16.04. Seguí la respuesta de PhatHV aestepregunta, y la aplicación de escritorio se abre bien y parece correcta, pero cuando intento conectarme a una base de datos (y sé que esto debería funcionar porque me conecté a la misma base de datos en Windows), aparece una ventana de error que dice

An error was encountered performing the requested operation:

no ocijdbc12 in java.library.path

Vendor code 0

¿Alguien sabe a qué se debe este error y cómo solucionarlo?

Respuesta1

Para mí, solo funciona cuando configuro la variable de entorno LD_LIBRARY_PATH en el directorio de Instant Client, haciéndolo en /etc/ld.so.conf.d/oracle.conf y al ejecutarlo sudo ldconfigno funciona.

Respuesta2

Bien, ahora he logrado (con algo de ayuda) solucionar este problema en dos computadoras separadas, pero ha pasado suficiente tiempo como para no recordar todo lo que hicimos para solucionarlo. Incluiré al menos lo que recuerdo y es posible que modifique esta respuesta más adelante. No entiendo todo lo que hay debajo del capó, así que me disculpo si hay pasos innecesarios. Sin embargo, como mencioné en la pregunta original, seguí otra respuesta dada por PhatHV y no repetiré aquí los pasos que encontré allí. Se supone que has seguido su tutorial antes de venir aquí.

Instalar el cliente instantáneo de Oracle

Para la versión 4.2.0 de SQL Developer, necesitaba obtener la versión 12.2.0.1.0 de Instant Client. Puedes encontrar la descarga.aquí. Seleccione el "Cliente instantáneo para Linux" que corresponda a su arquitectura (tengo una máquina de 64 bits, así que abrí la opción x86-64. Descargue los siguientes 5 archivos (sustituyendo el número de versión y la arquitectura cuando corresponda):

  • Oracle-instantclient12.2-basic-12.2.0.1.0-1.x86-64.rpm
  • Oracle-instantclient12.2-devel-12.2.0.1.0-1.x86-64.rpm
  • Oracle-instantclient12.2-jdbc-12.2.0.1.0-1.x86-64.rpm
  • Oracle-instantclient12.2-odbc-12.2.0.1.0-1.x86-64.rpm
  • Oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86-64.rpm

Si aún no la tienes, necesitarás instalar una herramienta llamada alien:

sudo apt-get install alien

Navegue hasta su directorio de Descargas (o donde guardó los archivos) y ejecútelo sudo alien -ien cada archivo para instalarlo. Lo usamos alienporque primero los convierte .debantes de instalarlos. Como nota, alienno produce mucho resultado de inmediato, por lo que puede parecer que no está haciendo nada, pero lo prometo.

sudo alien -i oracle-instantclient12.2-basic-12.2.0.1.0-1.x86-64.rpm
sudo alien -i oracle-instantclient12.2-devel-12.2.0.1.0-1.x86-64.rpm
sudo alien -i oracle-instantclient12.2-jdbc-12.2.0.1.0-1.x86-64.rpm
sudo alien -i oracle-instantclient12.2-odbc-12.2.0.1.0-1.x86-64.rpm
sudo alien -i oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86-64.rpm

Editar variables de perfil y entorno

Deberá ser usuario root para todos estos comandos. Ejecute sudo supara iniciar sesión como root.

Edite /etc/profile.d/oracle.shpara que contenga lo siguiente:

export ORACLE_HOME=/usr/lib/oracle/12.2/client64
export TNS_ADMIN=/usr/lib/oracle/ora
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

Tenga en cuenta aquí el número de versión en la ORACLE_HOMEvariable. De nuevo, el mío lo es 12.2, pero el tuyo podría ser otra cosa. También es común configurar TNS_ADMIN=$ORACLE_HOME/ora, pero elegí no hacerlo para que mis .oraarchivos no estén en un directorio que dependa de la versión (como 12.2).

Editar /etc/ld.so.conf.d/oracle.confpara contener

/usr/lib/oracle/12.2/client64/lib/

Nuevamente, tenga en cuenta el número de versión.

Finalmente, en/etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/default-java/"
CLASSPATH=/usr/lib/jvm/default-java/lib:/usr/lib/jvm/default-java/include:/usr/lib/oracle/12.2/client64/lib

Una vez que haya terminado de editar todos estos archivos, ejecute

ldconfig
source /etc/profile.d/oracle.sh
source /etc/environment

Pulsa <Ctrl> + Do escribe exitpara volver a ser un usuario normal.

Agregar como controlador de terceros

No sé si este paso es estrictamente necesario, pero funciona en mi computadora. Si abre SQL Developer, puede navegar Tools -> Preferences -> Database -> Third Party JDBC Driversy hacer clic en Add Entry. Abra /usr/lib/oracle/12.2/client64y haga clic en lib. Lo resaltará y luego podrá hacer clic selectpara agregarlo a la lista.

Después de este paso, deberá cerrar y volver a abrir SQL Developer. Una vez que hayas hecho todo eso,con un poco de suerteNo obtendrás más errores.

información relacionada