Descargar del sitio web de Oracle los siguientes archivos.
oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64.rpm
Empezamos a instalar los paquetes
└─> ¯\_(ツ)_/¯ sudo yum localinstall oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-basic.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-basic x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64 185 M Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 185 M Tamaño instalado: 185 M Is this ok [y/d/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-basic.x86_64 0:12.1.0.2.0-1 ¡Listo!
└─> ¯\_(ツ)_/¯ sudo yum localinstall oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-devel.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-devel x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64 1.9 M Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 1.9 M Tamaño instalado: 1.9 M Is this ok [y/d/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-devel.x86_64 0:12.1.0.2.0-1 ¡Listo!
└─> ¯\_(ツ)_/¯ sudo yum localinstall -y oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-jdbc.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-jdbc x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64 1.7 M Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 1.7 M Tamaño instalado: 1.7 M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-jdbc.x86_64 0:12.1.0.2.0-1 ¡Listo!
└─> ¯\_(ツ)_/¯ sudo yum localinstall -y oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-odbc.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-odbc x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64 4.2 M Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 4.2 M Tamaño instalado: 4.2 M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-odbc.x86_64 0:12.1.0.2.0-1 ¡Listo!
└─> ¯\_(ツ)_/¯ sudo yum localinstall -y oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-sqlplus.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-sqlplus x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64 3.0 M Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 3.0 M Tamaño instalado: 3.0 M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-sqlplus.x86_64 0:12.1.0.2.0-1 ¡Listo!
─> ¯\_(ツ)_/¯ sudo yum localinstall -y oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64.rpm Complementos cargados:fastestmirror, langpacks Examinando oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64.rpm: oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64 Marcando oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64.rpm para ser instalado Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete oracle-instantclient12.1-tools.x86_64 0:12.1.0.2.0-1 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================= Instalando: oracle-instantclient12.1-tools x86_64 12.1.0.2.0-1 /oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64 505 k Resumen de la transacción ========================================================================================================================================= Instalar 1 Paquete Tamaño total: 505 k Tamaño instalado: 505 k Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Instalando : oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64 1/1 Comprobando : oracle-instantclient12.1-tools-12.1.0.2.0-1.x86_64 1/1 Instalado: oracle-instantclient12.1-tools.x86_64 0:12.1.0.2.0-1 ¡Listo!
Luego de ello… podemos ver que librerias fueron instaladas
└─> ¯\_(ツ)_/¯ ls -la /usr/lib/oracle/12.1/client64/lib/ total 199296 drwxr-xr-x 2 root root 4096 feb 11 09:43 . drwxr-xr-x 4 root root 28 feb 11 09:42 .. -rw-r--r-- 1 root root 342 jul 7 2014 glogin.sql lrwxrwxrwx 1 root root 21 feb 11 09:43 libclntshcore.so -> libclntshcore.so.12.1 -rw-r--r-- 1 root root 6990875 jul 7 2014 libclntshcore.so.12.1 lrwxrwxrwx 1 root root 17 feb 11 09:43 libclntsh.so -> libclntsh.so.12.1 -rw-r--r-- 1 root root 58793741 jul 7 2014 libclntsh.so.12.1 -rw-r--r-- 1 root root 18027 jul 7 2014 libheteroxa12.so -rw-r--r-- 1 root root 1768370 jul 7 2014 libipc1.so -rw-r--r-- 1 root root 544150 jul 7 2014 libmql1.so -rw-r--r-- 1 root root 6213011 jul 7 2014 libnnz12.so lrwxrwxrwx 1 root root 15 feb 11 09:43 libocci.so -> libocci.so.12.1 -rw-r--r-- 1 root root 2576030 jul 7 2014 libocci.so.12.1 -rw-r--r-- 1 root root 109549133 jul 7 2014 libociei.so -rw-r--r-- 1 root root 156353 jul 7 2014 libocijdbc12.so -rw-r--r-- 1 root root 337137 jul 7 2014 libons.so -rw-r--r-- 1 root root 118491 jul 7 2014 liboramysql12.so -rw-r--r-- 1 root root 1564082 jul 7 2014 libsqlplusic.so -rw-r--r-- 1 root root 1546540 jul 7 2014 libsqlplus.so -rw-r--r-- 1 root root 4421284 jul 7 2014 libsqora.so.12.1 -rw-r--r-- 1 root root 3670975 jul 7 2014 ojdbc6.jar -rw-r--r-- 1 root root 3677511 jul 7 2014 ojdbc7.jar -rw-r--r-- 1 root root 1657951 jul 7 2014 orai18n.jar -rw-r--r-- 1 root root 86899 jul 7 2014 orai18n-mapping.jar -rw-r--r-- 1 root root 311555 jul 7 2014 ottclasses.zip -rw-r--r-- 1 root root 35925 jul 7 2014 xstreams.jar
Estas librerías debemos agregarlas al archivo de configuración de librerías del sistema operativo. En el directorio /etc/ld.so.conf.d/ debemos crear un archivo que nos guarde esta ruta
[root@dba Descargas]# echo /usr/lib/oracle/12.1/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf [root@dba Descargas]# ls -ltr /etc/ld.so.conf.d/oracle-instantclient.conf -rw-r--r-- 1 root root 34 feb 11 11:11 /etc/ld.so.conf.d/oracle-instantclient.conf [root@dba Descargas]# cat /etc/ld.so.conf.d/oracle-instantclient.conf /usr/lib/oracle/12.1/client64/lib [root@dba Descargas]# ls -ltr /etc/ld.so.conf.d/ total 44 -rw-r--r-- 1 root root 22 jun 9 2014 qt-x86_64.conf -rw-r--r--. 1 root root 18 jun 10 2014 tix-x86_64.conf -rw-r--r--. 1 root root 17 nov 5 2016 libiscsi-x86_64.conf -rw-r--r-- 1 root root 19 ago 2 2017 varnish-x86_64.conf -rw-r--r--. 1 root root 17 ago 2 2017 atlas-x86_64.conf -r--r--r--. 1 root root 63 abr 20 2018 kernel-3.10.0-862.el7.x86_64.conf -rw-r--r-- 1 root root 19 oct 30 2018 dyninst-x86_64.conf -rw-r--r--. 1 root root 34 dic 26 2018 oracle.conf -r--r--r-- 1 root root 63 may 14 2019 kernel-3.10.0-957.12.2.el7.x86_64.conf -rw-r--r-- 1 root root 17 jun 10 2019 mysql-x86_64.conf -rw-r--r-- 1 root root 34 feb 11 11:11 oracle-instantclient.conf [root@dba Descargas]#
Con esto tenemos funcional el cliente de oracle, podemos acceder al ejecutable sqlplus.
Ahora debemos indicarle al cliente cuales son los SIDs o accesos o destinos a donde nos queremos conectar. Para ello entonces debemos crear un archivo tnsnames.ora, el cual lo dejamos en el directorio network/admin que no existe, para ello creamos primero esta ruta de la siguiente forma.
[root@dba Descargas]# mkdir -p /usr/lib/oracle/12.1/client64/network/admin [root@dba Descargas]# ls -ltr /usr/lib/oracle/12.1/client64/network/admin total 0 [root@dba Descargas]#
Creamos el archivo tnsnames.ora en la ruta que acabo de crear , usamos el formato estandar
db1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.3)(PORT = 1524)) (CONNECT_DATA = (SERVER = DEDICATED) (SID = db1) ) )
En ocasiones la instancia configura el SERVICE_NAME en lugar de SID, por tanto es necesario tener en cuenta cuales son los parámetros con los que funciona la instancia a la que deseamos conectarnos.
Lo siguiente es definir las variables para hacer uso del cliente oracle
export ORACLE_HOME=/usr/lib/oracle/12.1/client64 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib export TNS_ADMIN=$ORACLE_HOME/network/admin
Estos valores los guardamos en el profile del usuario o en un archivo generalizado del servidor para que cualquier usado pueda cargar estas variables. Si no se cargan estas variables, ocurre lo siguiente…
[root@dba admin]# sqlplus bash: sqlplus: no se encontró la orden... [root@dba admin]#
Cargamos variables y ejecutamos sqlplus
[root@dba admin]# export ORACLE_HOME=/usr/lib/oracle/12.1/client64 [root@dba admin]# export PATH=$PATH:$ORACLE_HOME/bin [root@dba admin]# export LD_LIBRARY_PATH=$ORACLE_HOME/lib [root@dba admin]# export TNS_ADMIN=$ORACLE_HOME/network/admin [root@dba admin]# sqlplus SQL*Plus: Release 12.1.0.2.0 Production on Tue Feb 11 11:28:46 2020 Copyright (c) 1982, 2014, Oracle. All rights reserved. Enter user-name: ^C [root@dba admin]#
Ahora probamos una conexión a una instancia
[root@dba admin]# sqlplus system@queryx SQL*Plus: Release 12.1.0.2.0 Production on Tue Feb 11 11:29:45 2020 Copyright (c) 1982, 2014, Oracle. All rights reserved. Enter password: Connected to: Oracle Database 11g Release 11.2.0.4.0 - 64bit Production SQL>
Con esto hemos verificado la conexión desde nuestro cliente oracle.
Sin respuestas