Al ejecutar el instalador de Libertya sobre Windows Vista hemos detectado un problema que se da particularmente con PostgreSQL y Windows Vista. Durante el progreso de la instalación, todo va bien hasta que el instalador intenta crear la base de datos de Libertya. En este punto, el instalador no puede realizar la actividad de creación de la base de datos y finaliza sin haberla creado. El error concreto que se está produciendo puede verse en el archivo de log creado por el instalador C:\Libertya_ImportacionBD_AAAAMMDD_HHSS.log, cuyo contenido es similar al siguiente:
Setting myEnvironment ....
Recrear usuario libertya e importar C:\ServidorOXP\data\libertya_schema.sql - (libertya)
<nowiki>== La importación mostrará avisos == </nowiki>
<span style="color:#008800">psql: FATAL: no pg_hba.conf entry for host "::1", user "postgres", database "postgres", SSL off </span>
...
Lo que nos está diciendo el error es que Windows Vista está utilizando el protocolo IP versión 6 para comunicarse con el servicio de Postgres, pero Postgres no tiene configurada la entrada para Ipv6 que habilita las conexiones locales al servicio mediante esa versión del protocolo. Esa configuración debe estar en el archivo de configuración de accesos de Postgres denominado pg_hba.conf.
Es por esto que el instalador entonces falla en la tarea de importación de la base de datos. A continuación se explican los pasos a seguir para corregir este problema de Vista y Postgres, para luego continuar con la finalización de la instalación de Libertya.
Lo primero que debemos realizar es agregar la siguiente entrada en el archivo pg_hba.conf. El mismo se puede encontrar en el menú de programas, dentro de la carpeta de PostgresSQL. Es importante que la edición de este archivo se realice en modo Administrador, con lo cual para editar el archivo se recomienda realizar un click con el botón derecho del mouse, y seleccionar la opción “Ejecutar como Administrador”. Una vez abierto el archivo de configuración, agregar la siguiente línea la final del mismo y guardar los cambios en el archivo:
<pre style=“border-width:0”>host all all ::1/128 trust</pre>
Una vez modificado el archivo de accesos, es necesario que Postgres recargue la configuración para comenzar a operar con los cambios realizados. Esto se puede realizar desde el menú de programas, dentro de la carpeta de PostgreSQL, ejecutando también como Administrador la entrada “Recargar Configuración”.
Nota: no es necesario detener e iniciar el servicio de Postgres para que los cambios en los archivos de configuración comiencen a ser visibles, simplemente con el programa de Recarga de Configuración que brinda Postgres alcanza.
Ahora solo resta finalizar con la instalación de Libertya. El problema en cuestión no afecta al copiado de archivos ni a la configuración de Libertya, por lo que estos pasos seguramente se hayan realizado de forma correcta por el instalador. Lo único que falta realizar entonces es crear la base de datos de Libertya.
En este caso, inevitablemente se debe realizar una instalación manual de la base de datos, pero para facilitar esta tarea hemos creado un script bat que hará la importación por nosotros. A continuación explicamos los pasos a seguir para la utilización del script. Lo primero que debemos realizar es descargarnos los siguientes dos archivos:
ImportDB.bat : este es el script bat que se encargara de realizar la creación e importación de la base de datos de Libertya.
pljava_install.sql : este script sql es utilizado por ImportDB.bat a fin de crear el esquema SQLJ en la base de datos de Libertya para su correcto funcionamiento.
Una vez descargados los archivos, <span style=“color:#FF0000”>es importante que ambos se copien en la carpeta utils dentro del directorio de instalación de Libertya (C:\ServidorOXP\utils)</span> antes de ejecutar el ImportDB.bat. Si no se copian ambos archivos en la carpeta utils, entonces la importación no se realizará correctamente y peor aún, podría quedar en un estado intermedio que complicaría aún mas las cosas.
Ahora sí, tenemos los archivos ImportDB.bat y pljava_install.sql en la carpeta utils. El paso siguiente es ejecutar con doble click el archivo ImportDB.bat, y la importación de la base de datos comenzará inmediatamente. Aquí no debería producirse ningún error (no hay que preocuparse por algunos WARNINGs que se pueden visualizar en la consola, es normal y no son problemas). Una vez finalizada la ejecución del script, la base de datos debería estar creada e importada correctamente.
Por último, para comprobar si todo salió bien es posible utilizar el cliente de Postgres PgAdmin y verificar que la base de datos está creada y contiene los tres esquemas (public, libertya y sqlj); o directamente iniciar la aplicación de Libertya y probar su correcto funcionamiento.