Instalación Oracle Instant Client (multiplataforma: Windows, Debian & Oracle Linux y Docker) paso a paso
02/04/2020 -
Instant Client es un reempaquetado de bibliotecas, herramientas y archivos de encabezado de Oracle Database que se pueden usar para crear y ejecutar aplicaciones que se conectan a una base de datos Oracle remota (o local).
Las bibliotecas de Instant Client proporcionan la conectividad de red necesaria, así como características de datos básicas y de alta gama, para aprovechar al máximo Oracle Database. Proporciona acceso para aplicaciones OCI, OCCI, JDBC, ODBC, Pro*C y es la base de los principales controladores de lenguaje de scripting como node-oracledb para Node.js, PHP OCI8, ruby-oci8, Perl DBD::Oracle, Python cx_Oracle y el controlador de ROracle del lenguaje de programación estadístico R.
En este artículo veremos cómo instalarlo bajo diferentes plataformas:
Windows
Acudiremos a la página de descarga del software y descargaremos el “Basic Package”. Si necesitásemos compilar aplicaciones que empleen las interfaces descritas anteriormente, como puede ser el cliente ROracle, necesitaremos descargar también “SDK Package”.
También se proveen por separado paquetes con herramientas o soporte adicionales que podremos descargar a conveniencia.
Una vez descargados, descomprimiremos todos los .zip en el mismo directorio de nuestra elección (teniendo en cuenta que deberá ser accesible por todos los usuarios que requieran usar el software).
Por último, añadiremos a la variable “PATH” de Windows la ruta absoluta hasta el directorio “instantclient_xx_x” (donde xx_x es el número de versión) descomprimido anteriormente:
Panel de control > Sistema > Configuración avanzada del sistema > Variables de entorno > Seleccionar variable “Path” > Editar > Nueva
Linux (Red hat based: Oracle Linux 6/7)
En el caso concreto de las distribuciones de Oracle, lo más cómodo y práctico es instalar el software directamente desde los repositorios oficiales. Realizaremos los siguientes pasos, siempre como superusuario o root “root”:
Instalar el gestor de descargas “wget” y el paquete de utilidades de “yum”:
yum install -y wget yum-utils
Descargar el listado de repositorios oficiales (reemplace “ol7” por “ol6” según su versión para los siguientes pasos):
wget http://yum.oracle.com/public-yum-ol7.repo -P /etc/yum.repos.d
Habilitar el repo de instantclient:
yum-config-manager --enable ol7_oracle_instantclient
Listar los paquetes disponibles:
yum list oracle-instantclient*
Instalar los paquetes. Sustituye XX.X por la versión deseada:
yum install -y oracle-instantclientXX.X-*
Linux (Debian based)
Como superusuario o “root”:
Instalar “wget”, el paquete de utilidades de “apt” y “libaio” (The Linux-native asynchronous I/O facility):
apt-get install -y apt-utils && apt-get install -y wget unzip libaio1
Descargar el software de la página de Oracle (escoger los binarios dependiendo de su arquitectura):
wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip ...
Descomprimir los ficheros
unzip “instantclient-*”
Si la versión que estás instalando es anterior a la 18.3, deberás crear los siguientes enlaces:
cd <InstallDir>/instantclient_XX_X && ln -s libclntsh.so.XX.1 libclntsh.so && ln -s libocci.so.XX.1 libocci.so
Donde “<InstallDir>” es el directorio donde descomprimió el software y XX es el número de versión.
Fijar las variables de entorno:
export OCI_LIB=<InstallDir>/instantclient_XX_X export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OCI_LIB export PATH=$PATH:$OCI_LIB
Para conseguir que perduren, puedes definirlas al final del fichero “/etc/profile”.
Docker
Para Docker, existe una imagen disponible con los paquetes Basic, SDK y SQL*Plus.
Accede a ella en la Docker Store y acepta los términos de la licencia, tras lo cual puedes descargar la imagen con:
docker pull store/oracle/database-instantclient:12.2.0.1
Y ejecutarla como sigue:
docker run -ti --rm store/oracle/database-instantclient:12.2.0.1 sqlplus hr/welcome@example.com/pdborcl
Los archivos de compilación de Docker también están disponibles en GitHub.
Referencias:
https://www.oracle.com/database/technologies/instant-client.html