Se ha visto como conectarse a MS SQL usando el driver oficial de MS o a través de FreeTDS, ahora se explica como conectar Ubuntu 14.04 a oracle utilizando el cliente oficial de oracle el cual tiene la complicación sólo estar disponible en .rpm
.
Preeliminares
Se realiza luego en un Ubuntu 14.04 server al cual se le ha instalado/configurado lo detallado a aquí y aquí, esto lo menciono como antecedente pues en realidad no es un pre-requisito tener unixODBC o FreeTDS instalado.
Instalación de Oracle Instant Client
- Descargar los archivos
.rpm
de Oracle Instant Client desde la web oficial, se debe descargar los archivos: basic, sqlplus y devel. Aquí sí se está en el server sin interfaz gráfica se tiene el problema de que para descargar los archivos se necesita estar registrado, por lo que toca descargarlos en otra máquina y copiar los archivos al servidor Ubuntu utilizando un medio físico o si se está en red se puede usar SCP desde linux o PSCP desde windows. - Instalar el paquete
alien
que es el software que nos permite pasar los.rpm
a.deb
.
# apt-get install alien
- Convertir los paquetes
.rpm
a.deb
; para ello desde la carpeta donde se tiene copiados los .rpm se ejecuta lo siguiente (obviamente teníendo en cuenta el nombre correcto de los archivos)
# alien -iv oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
# alien -iv oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
# alien -iv oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
Configuración de Oracle Instant Client
Descargar los
- agregar
/usr/lib/oracle/11.2/client64/lib/
en eloracle.conf
# sudo nano /etc/ld.so.conf.d/oracle.conf
agregar: /usr/lib/oracle/11.2/client64/lib/
(ojo, el archivo estará vacío)
- Ejecutar ldconfig
# sudo ldconfig
- Configurar las environment variable de Oracle
# nano /etc/profile.d/oracle.sh
agregar:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=/usr/lib/oracle/11.2/client64/network/admin
export PATH=$PATH:$ORACLE_HOME/bin
- Configurar el bash profile
# nano ~/.bash_profile
agregar:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=/usr/lib/oracle/11.2/client64/network/admin
- Reiniciar
# sudo reboot
- Setear el directorio /include
# ln -s /usr/include/oracle/11.2/client64 $ORACLE_HOME/include
- Instalar la libreria
libaio1
# sudo apt-get install libaio1
- Finalmente, para probar la instalacion se debe conectar a un servidor utilizando
sqlplus
de la siquiente manera:
# sqlplus username/password@//dbhost:1521/SID