En esta breve guía vamos a instalar el motor de base de datos IBM DB2 versión 11.1 para LUW (Linux, Unix, Windows) sobre CentOS 7.
Nota Importante: Esta instalación puede ser usada para un ambiente de desarrollo, pruebas de aplicaciones o como laboratorio para evaluar alguna funcionalidad de esta herramienta. No debe ser usada para grupos de desarrolladores, mucho menos para ambientes de producción. Ya que se debe dimensionar la carga de trabajo que va a realizar la base de datos a través de un capacity planning para tener una correcta configuración.
Preparamos el servidor
Para instalar CentOS 7 podemos seguir el siguiente procedimiento. Para la instalación del motor de base de datos estoy usando una VM con Oracle Virtual Box con una configuración mínima de: 2 vCPUs, 4 GBytes de RAM, 40 Gbytes de disco duro y "adaptador puente" para la interfaz de red.
Desde el terminal en la línea de comandos, nos conectamos con usuario root:
$ su -
Verificamos si está activo SELinux, con el comando:
# sestatus
Si se encuentra en estado disabled está bien, sino deshabilitamos SELinux. Para ello editamos el archivo de configuración y donde dice SELINUX= colocamos disabled:
# vi /etc/selinux/config
Una buena práctica es siempre tener las últimas actualizaciones instaladas, para esto usamos el comando:
# yum -y update
Adicional, instalamos los siguientes paquetes:
# yum -y install cpp.x86_64 gcc.x86_64 gcc-c++.x86_64 libstdc++.i686 pam.i686
Reiniciamos el servidor:
# shutdown -r now
Nos conectamos con usuario root, después del reinicio:
$ su -
Verificamos nuevamente el estado de SELinux (debe estar disabled):
# sestatus
Verificamos la dirección ip de nuestra VM:
# ifconfig
Agregamos el puerto 50000 al Firewall, para esto desde el menú de Aplicaciones->Varios->Cortafuegos, agregamos a la zona pública el puerto 50000 tanto en "tiempo de ejecución" como en "permanente". Una vez que agregamos el puerto desde el menú superior escogemos Opciones y damos clic en la opción Recargar FirewallD. El puerto 50000 que agregamos al Firewall es el puerto que usa DB2 para las conexiones remotas, si llegáramos a tener algún problema al conectarnos podríamos deshabilitar el Firewall ya que tenemos un ambiente controlado de instalación.
Obtenemos la versión de DB2 11 para Linux
Desde esta url aquí, podemos descargar el instalador de DB2 para servidores, Linux para 64 bits. En este portal nos tenemos que registrar a través de un usuario y contraseña. El proceso de descarga es gratuito. El nombre del archivo es: v11.1_linuxx64_server_t.tar.gz
Podemos guardar el archivo en la carpeta de descargas del usuario que estamos conectados.
Abrimos la terminal con la línea de comandos, nos conectamos con usuario root:
$ su -
Nos ubicamos en la carpeta donde está nuestro archivo, en mi caso:
# cd /home/juanleon/Descargas
Descomprimimos el archivo con el comando:
#tar -xzvf v11.1_linuxx64_server_t.tar.gz
Empezamos la instalación
Después de descomprimir el archivo se crea una carpeta server_t, entramos en este directorio.
Ejecutamos el siguiente comando para saber si cumplimos con los requisitos de instalación:
./db2prereqcheck -v 11.1.0.0 -s -o /tmp/db_check11.1a.log
Debe salir un mensaje de que se cumplen los requisitos y un warning sobre que falta la instalación de "kernel-source", ese requisito es cuando instalamos pureScale para nuestro laboratorio no consideramos esa advertencia.
Podemos usar el comando db2_install si quisiéramos realizar la instalación por línea de comandos, pero la voy a realizar usando interfaz gráfica, usamos el comando:
./db2setup
Aparece la siguiente imagen que está arrancando el instalador.
Nos indica que podemos realizar una instalación nueva, damos clic en el botón:
Elegimos el producto a instalar, y damos clic en Siguiente:
Se muestra el directorio donde se va a instalar nuestro software (/opt/ibm/db2/V11.1), marcamos que estamos de acuerdo con la licencia y damos clic en Siguiente:
El usuario dueño de la instancia de db2 por default es db2inst1, no cambiamos nada solo ingresamos la contraseña:
Una vez que ingresamos correctamente la contraseña, damos clic en Siguiente:
Vamos a crear un usuario db2fenc1 para cuando creemos nuestra propias funciones y procedimientos almacenados, colocamos la contraseña:
Nos aparece una pantalla de resumen y damos clic en Finalizar.
Empieza el proceso de instalación.
Después de unos minutos ya esta lista la instalación de nuestro motor de base de datos.
Verificamos la instalación
Hasta ahora solo instalamos el motor de base de datos, voy a crear la base de datos que viene de ejemplo con el instalador, para eso ejecutamos:
#./opt/ibm/db2/V11.1/bin/db2sampl
Terminada la creación de la base de datos, validamos que todo este correcto con el comando:
#./opt/ibm/db2/V11.1/bin/db2val
Probamos nuestra conexión local desde el servidor usando:
# su - db2inst1
Llamamos a la terminal de línea de comandos de DB2 usando:
$ db2
Nos conectamos a la base de datos:
db2 => connect to SAMPLE
Aparece información de la conexión donde todo está correcto, listamos las tablas:
db2 => list tables
Y salimos.
db2 => quit
Conexión remota desde un cliente
Ahora desde el cliente de IBM Data Studio me voy a conectar a la nueva base de datos. Previamente debe haber descargado e instalado IBM Data Studio o tener otro software para conectarse a DB2, doy clic en "Conectarse con una base de datos y examinarla".
Aparece la siguiente ventana e ingreso la información de mi base de datos: dirección ip, puerto 50000, el nombre de la base SAMPLE, el usuario de la instancia db2inst1 y la contraseña:
Probamos la conexión y finalizamos.
Finalizar instalación
Podemos empezar a trabajar con el motor de base de datos IBM DB2 11.1 en CentOS 7.
Conclusión
La instalación de IBM DB2 en CentOS es un proceso que requiere precisión y atención a los detalles para asegurar un entorno de base de datos robusto y eficiente. Siguiendo los pasos detallados en este artículo, desde la preparación del servidor hasta la configuración y verificación de la instalación, puede garantizar que DB2 funcione correctamente en su sistema CentOS. Esta guía le proporciona todas las instrucciones necesarias para configurar una conexión remota desde un cliente, asegurando así la accesibilidad y gestión efectiva de su base de datos.