DB2: Guía de instalación de DB2 Express-C 10.1 en Mac OS X

Por UnixLibre / IBM DB2 Express Forum

Hermosillo, Sonora.- (12 de enero del 2013) DB2 Express-C 10.1 para Mac requiere Mac OS X Mountain Lion o superior. Para Mac OS X Lion o anteriores podemos instalar DB2 Express-C 9.5. Los pasos para instalar 9.5 desde la Terminal son similares a los presentados en este documento.

El procedimiento de instalación para DB2 Express-C 9.5 para Mac se realizaba con un instalador gráfico. Para 10.1 no es posible debido a incompatibilidades con las nuevas versiones de Java en Mac. La instalación se hace paso a paso desde la Terminal.

Adicionalmente debemos instalar Xcode y sus herramientas de desarrollo. Este paquete se puede instalar sin costo desde al App Store.

Configuración

Debemos ajustar algunos parámetros en el Kernel de Mac OS X. Para ello creamos el archivo /etc/sysctl.conf (o lo editamos si ya existe) con este contenido:

kern.sysv.shmmax=1073741824
kern.sysv.shmmin=1
kern.sysv.shmmni=4096
kern.sysv.shmseg=32
kern.sysv.shmall=1179648
kern.maxfilesperproc=65536
kern.maxfiles=65536

Para que estos parámetros tengan efecto debemos reiniciar el sistema.

Instalación

El procedimiento lo realizaremos como el usuario root desde una ventana de Terminal. Abrimos el programa Terminal e ingresamos:

$ sudo su -

La instalación requiere de un programa llamado "otool". Debemos asegurarnos que está en la ruta de acceso (Path). Ejecutamos:

# otool

y si el resultado es el mensaje "command not found", debemos ajustar la variable de entorno PATH:

# export PATH=$PATH;/Applications/XCode.app/Contents/Developer/usr/bin

Extraemos el archivo de instalación:

# tar -xvf db2_v101_macos_expc.tar.gz

e ingresamos al directorio "expc" y ejecutamos el instalador:

# cd expc
# ./db2_install

el programa nos preguntará por el directorio de instalación. La recomendación es que le especifiquemos el valor por omisión:

/opt/IBM/db2/V10.1

La instalación debe progresar sin problemas. Al finalizar debemos crear una instancia de la base de datos. Para ello, nos ubicamos en el subdirectorio "instance" debajo del directorio que acabamos de especificar para la instalación:

# cd /opt/IBM/db2/V10.1/instance

Ejecutamos el siguiente comando:

# ./db2icrt -u <propietario_de_la_instancia> <propietario_de_la_instancia>

El propietario de la instancia puede ser cualquier usuario excepto root. Es posible utilizar nuestra cuenta de usuario. Por ejemplo en Linux se crea por omisión el usuario db2inst1 y en Windows se crea db2admin. Estos usuarios también pueden ser candidatos, pero debemos crearlos anticipadamente.

Si es la primera vez que instalamos DB2 en el equipo, debemos ejecutar los siguientes pasos adicionales:

- Como el usuario root editamos el archivo /etc/services, y agregamos un servicio con el nombre de la instancia y con el puerto default, que es el 50000:

db2c_db2admin 50000/tcp

En este caso yo nombré al usuario dueño de la instancia "db2admin" y a la instancia la llamé "db2admin".

- Seguidamente habilitamos la conectividad TCP/IP. Como el usuario propietario de la instancia ejecutamos:

$ db2 update dbm cfg using svcename db2c_db2admin
$ db2set DB2COMM=TCPIP

Iniciando el Servidor

Utilizando la cuenta propietaria de la instancia ejecutamos lo siguiente:

$ cd $HOME/sqllib
$ . ./db2profile
$ db2start

Las primeras dos instrucciones sirven para inicializar el ambiente para el servidor DB2. La tercer instrucción (que efectivamente arranca el manejador de base de datos) no funciona correctamente si no invocamos la inicialización del ambiente.

Espero que a alguien le sirva.