En ocasiones ocurre que necesitamos cambiarnos a una versión más nueva del Firebird. Por ejemplo, estamos usando Firebird 1.5 y ahora queremos usar Firebird 2.5.2 ¿Qué debemos hacer en ese caso?

  1. Cerrar todas las conexiones a las bases de datos
  2. Backup con la versión vieja
  3. Verificación con la versión vieja
  4. Detener el Servidor del Firebird
  5. Iniciar la nueva versión del Servidor del Firebird
  6. Restaurar las bases de datos
  7. Actualizar las librerías cliente (el archivo FBCLIENT.DLL) en cada computadora cliente

Paso 1. Cerrar todas las conexiones a las bases de datos

Todos los usuarios deben desconectarse, nadie debe estar conectado. Para asegurarnos que después de todos haberse desconectado nadie más intente conectarse podríamos renombrar a la Base de Datos. Como los usuarios desconocen el nuevo nombre de la Base de Datos jamás conseguirán la conexión. Otra opción es usar el programa GFIX.EXE con la opción -force

Paso 2. Backup con la versión vieja

Esta siempre es una elemental medida de precaución porque si por cualquier motivo algo saliera mal entonces podríamos recuperar el 100% de nuestras bases de datos.

Paso 3. Verificación con la versión vieja

Siempre debemos verificar que los backups puedan ser restaurados exitosamente. Jamás debemos confiar en que se encuentran en buen estado, siempre debemos verificar que sea así antes de continuar. Si no verificamos nuestros backups podríamos encontrarnos con sorpresas muy desagradables cuando los necesitemos.

Entonces, se restaura el backup, y si no aparece algún mensaje de error durante la restauración eso significa que todo está ok

Paso 4. Detener el Servidor del Firebird

Una vez que hicimos un backup, verificamos que se encuentra en perfecto estado, y nos aseguramos de que nadie esté conectado a la Base de Datos, debemos detener el Servidor del Firebird. Si no lo hacemos, el Servidor podría continuar realizando tareas dentro de la Base de Datos sin que se las hayamos pedido (por ejemplo: un sweep, o una reindexación) y cuando nos conectemos con la nueva versión del Firebird habrá dos versiones accediendo a la misma Base de Datos y eso solamente puede ocasionar corrupción.

La probabilidad de que tal cosa ocurra no es alta pero ¿para qué dejar abierta la puerta a los problemas cuándo es tan fácil detener el Servidor del Firebird y asegurarnos de que no tendremos problemas?

Además, como seguramente sabes, puedes tener a dos o más versiones del Servidor del Firebird ejecutándose en la misma computadora. A veces es necesario que sea así. Pero si estás seguro de que ya no necesitarás a la versión vieja lo mejor es desinstalarla y así evitarás toda posibilidad de corrupción, porque si dos Servidores acceden a la misma Base de Datos en el mismo momento eso provoca corrupción.

Entonces ¿ya no necesitarás a la versión vieja del Firebird? desinstálala. ¿No estás seguro? desinstálala, porque siempre podrás volver a instalarla cuando la necesites

Paso 5. Iniciar la nueva versión del Servidor del Firebird

Ya el Servidor de la versión vieja está detenido, entonces podemos iniciar el Servidor de la versión nueva.

Paso 6. Restaurar las bases de datos

Las bases de datos originales no pueden (o no deben) ser usadas. Lo que debemos hacer es restaurarlas con la nueva versión del Firebird y así nos aseguraremos de que cuenten con todas las características de la nueva versión.

Recuerda: no uses la Base de Datos original, lo que debes hacer es restaurar su backup

Paso 7. Actualizar las librerías cliente (el archivo FBCLIENT.DLL) en cada computadora cliente

 Con el Paso 6. se terminó todo lo que le compete al Servidor, pero la tarea aún no está finalizada, porque todavía falta actualizar el archivo FBCLIENT.DLL en cada computadora que se conecta a las bases de datos.

 Si intentamos conectarnos a una Base de Datos administrada por un Servidor 2.5.2 con un Cliente 1.5 eso solamente nos causará problemas. Para conectarnos a un Servidor 2.5.2 debemos usar un Cliente 2.5.2

Conclusión:

Si queremos usar una versión más nueva del Firebird hay algunos pasos que debemos seguir, si no lo hacemos así entonces o no podremos conectarnos o perderemos datos, o corromperemos la Base de Datos. Y ninguna de esas opciones es buena.

Hacer el backup y la restauración no es algo instantáneo, puede tomar mucho tiempo, horas inclusive en bases de datos muy grandes, así que debemos realizarlos en los días o en los horarios en que menos usuarios suelen conectarse.

Artículo relacionado:

El índice del blog Firebird21