Firebird 3: software de 32 bits y de 64 bits

6 comentarios

Si nuestro Servidor es Firebird 3, debemos recordar lo siguiente:

  1. Si la aplicación que deseamos ejecutar fue compilada en 32 bits (nuestra propia aplicación, IBExpert, FlameRobin, etc.) entonces se requiere el archivo FBCLIENT.DLL de 32 bits, aún cuando el Servidor del Firebird 3 sea de 64 bits. Si es nuestra aplicación la que fue compilada en 32 bits entonces lo aconsejable es que el archivo FBCLIENT.DLL de 32 bits se encuentre en la misma carpeta en la cual se encuentra nuestro .EXE, así evitamos confusiones con otros archivos FBCLIENT.DLL que pudieran encontrarse en la misma computadora.
  2. Un Servidor Firebird 3 de 64 bits puede aceptar conexiones de un FBCLIENT.DLL de 32 bits o de 64 bits, indistintamente. Un Servidor Firebird 3 de 32 bits solamente puede aceptar conexiones de un FBCLIENT.DLL de 32 bits.
  3. La ODS (On Disk Structure) de una Base de Datos creada con Firebird 3 es exactamente la misma, sea que esa Base de Datos haya sido creada con la versión de 32 bits o con la versión de 64 bits.
  4. No se debe permitir la conexión a una Base de Datos con el Servidor de 32 bits y con el Servidor de 64 bits al mismo tiempo. O con el uno, o con el otro, pero no con ambos a la vez porque eso corromperá a la Base de Datos.

Artículos relacionados:

¿Qué es la versión de ODS?

Firebird 3: usando bases de datos anteriores

El índice del blog Firebird21

El foro del blog Firebird21

 

 

 

Anuncios

Firebird 3: verificando el restore antes del backup completo

Deja un comentario

Si ya tienes una Base de Datos creada con una versión anterior del Firebird y deseas utilizarla con Firebird 3 deberás hacer un ciclo backup/restore pero en bases de datos muy grandes ese ciclo puede demorar mucho tiempo, varias horas inclusive.

Y lo peor … después de muchos minutos o de muchas horas de haberse iniciado el ciclo te muestra un mensaje de error, de que la Base de Datos no puede ser restaurada porque encontró algún problema.

¿Por qué?

Porque el Firebird no verifica los metadatos durante las operaciones normales que realizan los usuarios (INSERT, UPDATE, DELETE, SELECT), sino cuando hace un restore con el programa GBAK.EXE o una verificación con el programa GFIX.EXE

¿Qué son los metadatos?

Son los datos usados internamente por el Firebird. Eso incluye a los dominios, las estructuras de las tablas, los índices, los stored procedures, los triggers, etc.

Todos ellos se encuentran dentro de la Base de Datos y fueron colocados allí por el propio Firebird para su manejo interno o por nosotros cuando diseñamos esa Base de Datos.

Los metadatos, así como cualquier dato introducido por los usuarios, pueden dañarse. Eso es muy raro que ocurra, pero no es imposible, ningún archivo de computadora es inmune a la corrupción.

¿Cómo podemos verificar rápidamente que los metadatos estén ok?

Haciendo un ciclo backup/restore pero usando la opción -meta_data

Cuando usamos la opción -meta_data solamente los metadatos son copiados y restaurados, los datos introducidos por los usuarios son ignorados. Con esto por supuesto se consigue que el proceso sea rapidísimo porque los metadatos ocupan una porción ínfima de la Base de Datos en bases de datos muy grandes.

Por ejemplo, podríamos tener una Base de Datos cuyo tamaño es de 20 Gb pero sus metadatos ocupan solamente 20 Mb, es decir 1000 veces menos. Eso implica que el ciclo backup/restore será 1000 veces más rápido.

Haciendo un ciclo backup/restore de los metadatos

GBAK -backup -verbose -meta_data -user SYSDBA -password masterkey MiBaseDatos.FDB MiBackup.FBK

GBAK -create -verbose -meta_data -user SYSDBA -password masterkey MiBackup.FBK MiNuevaBaseDatos.FDB

Si hay algún problema con los metadatos entonces con los dos comandos anteriores “saltará” el error. El programa GBAK nos dirá cual fue el error (o los errores) que encontró y nos dedicaremos a solucionar eso antes de hacer el ciclo backup/restore definitivo.

La ganancia de tiempo puede ser impresionante. Un ciclo backup/restore solamente de los metadatos típicamente no durará más que 2 ó 3 minutos, mientras que un ciclo backup/restore completo puede durar varias horas.

Entonces, lo más inteligente es hacer primero un ciclo backup/restore de solamente los metadatos y en el caso de que todo esté bien hacer el ciclo backup/restore completo. Por supuesto que si al hacer el ciclo backup/restore de los metadatos se encontró algún error (o algunos errores) hay que corregir eso antes de hacer el ciclo backup/restore completo.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

 

Firebird 3: usando bases de datos anteriores

3 comentarios

Ok, ya hemos instalado a Firebird 3, ahora queremos empezar a utilizarlo. ¿Cómo lo hacemos?

Lo más probable es que tengamos bases de datos creadas con versiones anteriores de Firebird. Entonces hay que convertir esas bases de datos al formato que usa Firebird 3.

El Firebird utiliza un número interno llamado ODS (On Disk Structure) para saber con cual versión de Firebird fue creada una Base de Datos. Cada versión del Firebird tiene un número único de ODS. Esos números son:

FIREBIRD3_15

Captura 1. Si haces clic en la imagen la verás más grande

Si no coincide la ODS de una Base de Datos con la versión del Servidor del Firebird entonces no podremos conectarnos a esa Base de Datos.

¿Cómo cambiamos la ODS de una Base de Datos?

Mediante un ciclo backup/restore. Hacemos el backup con la versión actual y el restore con la nueva versión.

IMPORTANTE: Esto solamente funciona en una dirección: de una ODS menor a una ODS mayor.

Ejemplo: Usar una Base de Datos creada con Firebird 2.5 en Firebird 3

firebird3_16

Captura 2. Si haces clic en la imagen la verás más grande

Como podemos ver en la Captura 2. la conexión falló porque la ODS de la Base de Datos es 11.2 y la ODS que reconoce el Servidor del Firebird es 12.0

Entonces lo que debemos hacer es convertir la ODS de esa Base de Datos a 12.0, para que pueda ser reconocida. Para ello necesitaremos realizar un ciclo backup/restore.

FIREBIRD3_17

Captura 3. Si haces clic en la imagen la verás más grande

En la Captura 3. hicimos el backup con la versión 2.5 del Firebird ¿cómo sabemos eso? Por dos pistas: a) la carpeta donde se encuentra el programa GBAK.EXE y b) el puerto que usamos para conectarnos a la Base de Datos. En nuestros ejemplos usamos el puerto 3050 para Firebird 2.5 y el puerto 3053 para Firebird 3.

Ahora que ya tenemos el backup realizado el siguiente paso es restaurarlo. Para ello, nos ubicamos en la carpeta donde instalamos al Firebird 3 y escribimos:

FIREBIRD3_18

Captura 4. Si haces clic en la imagen la verás más grande

Cuando la restauración finalice tendremos una nueva Base de Datos, de nombre PRUEBA1-3.FDB y cuya ODS será 12.0 y por lo tanto nos podremos conectar a ella usando Firebird 3.

FIREBIRD3_19

Captura 5. Si haces clic en la imagen la verás más grande

Como podemos ver en la Captura 5. no fue necesario especificar el puerto 3053 ¿por qué no? porque para la conexión usamos el programa ISQL.EXE que se instala junto con el Firebird 3. Sin embargo, en otros casos sí necesitaremos especificar dicho puerto:

FIREBIRD3_20

Captura 6. Si haces clic en la imagen la verás más grande

En el string de conexión que vemos en la Captura 6. indicamos la dirección IP de la computadora donde se encuentra la Base de Datos y también el puerto de esa computadora que usa el Servidor del Firebird 3.

Como siempre, hay que indicar además el path completo a la Base de Datos (ese path es desde el punto de vista del Servidor), el nombre de un usuario, y la contraseña de ese usuario.

Conclusión:

Para que en Firebird 3 podamos usar una Base de Datos creada con una versión anterior del Firebird debemos hacer un ciclo backup/restore. El backup lo hacemos con la versión anterior del Firebird y el restore lo hacemos con Firebird 3.

Para conectarnos a la Base de Datos restaurada a veces será necesario especificar el puerto que utiliza el Firebird 3.

Artículos relacionados:

Instalando Firebird 3 (1)

Instalando Firebird 3 (2)

El índice del blog Firebird21

El foro del blog Firebird21

Desinstalando Firebird 3

Deja un comentario

Si por algún motivo quieres desinstalar a Firebird 3, los pasos a seguir son los siguientes:

  1. Hacer clic en Inicio | Panel de Control | Programas y características | Firebird 3.0.0
  2. Hacer clic con el botón derecho
  3. Hacer clic en la opción Desinstalar

FIREBIRD3_D_1

Captura 1. Si haces clic en la imagen la verás más grande

Alternativamente, puedes ubicarte en la carpeta donde instalaste al Firebird 3 y ejecutar el archivo UNINS000.EXE

FIREBIRD3_D_2

Captura 2. Si haces clic en la imagen la verás más grande

Debes hacerlo como se muestra en la Captura 1. o como se muestra en la Captura 2. porque cuando se instala el Firebird 3, a) se modifica el Registro del Windows y b) se lo instala como un Servicio. Al desinstalarlo correctamente esas entradas son eliminadas. Si lo desinstalas entonces incorrectamente quedará “basura” en la computadora.

Artículos relacionados:

Instalando Firebird 3 (1)

Instalando Firebird 3 (2)

El índice del blog Firebird21

El foro del blog Firebird21

Instalando Firebird 3 (2)

8 comentarios

En un artículo anterior ya hemos visto como instalar al Firebird 3 si será la única instancia del Firebird que se ejecutará en una computadora. Si en esa computadora debe coexistir con otra versión (u otras versiones) entonces los pasos a seguir son un poco más complicados y los detallaremos en este artículo.

Para tener a Firebird 3 y a una versión anterior del Firebird en la misma computadora

  1. Detener el servicio actual del Firebird
  2. Descargar el instalador del Firebird 3
  3. Instalar al Firebird 3
  4. En el archivo FIREBIRD.CONF elegir el puerto que usará Firebird 3
  5. Registrar al Firebird 3 en el Registro del Windows
  6. Instalar al Firebird 3 como un servicio del Windows
  7. Reiniciar el servicio del Firebird detenido en el paso 1.

1. Detener el servicio actual del Firebird

Esto solamente deberías hacer si quieres tener dos (o más) versiones del Firebird en la misma computadora. Si quieres tener una sola versión del Firebird (por ejemplo, si solamente quieres tener a Firebird 3) no debes hacer lo que dice en este apartado sino desinstalar la otra versión (u otras versiones).

Inicio | Panel de Control | Herramientas administrativas | Servicios | Firebird Server – Default Instance

Clic derecho para que aparezca el menú contextual

FIREBIRD3_8

Captura 1. Si haces clic en la imagen la verás más grande

Al hacer clic con el botón derecho del mouse aparecerá un menú contextual, una de cuyas opciones es Detener. Haciendo clic allí se detendrá el servicio.

No se puede instalar a Firebird 3 si hay alguna versión del Firebird ejecutándose, por ese debemos detener a esa versión (y si hay más de una versión, debemos detenerlas a todas). Eso es lo que se hace en la Captura 1.

2. Descargar el instalador del Firebird 3

Nos vamos a la página oficial de descargas:

http://www.firebirdsql.org/en/firebird-3-0-0/

Y descargamos el que corresponde a los bits de nuestro Sistema Operativo (32 bits ó 64 bits).

3. Instalar el Firebird 3

Para asegurarte de que Firebird 3 pueda ser ejecutado debes instalarlo con derecho de Administrador. Para ello, haz clic con el botón derecho sobre el nombre del archivo que descargaste y luego elige la opción Ejecutar como administrador

FIREBIRD3_1

Captura 2. Si haces clic en la imagen la verás más grande

Como ya existe otra versión del Firebird instalada, aunque no esté siendo usada en este momento, verás un mensaje de advertencia:

FIREBIRD3_9

Captura 3. Si haces clic en la imagen la verás más grande

Debes hacer clic en el botón No. Con eso el Firebird será instalado, pero no configurado. Por esa razón deberemos configurarlo manualmente más tarde.

FIREBIRD3_2

Captura 4. Si haces clic en la imagen la verás más grande

Cuando veas la pantalla donde te pregunta por el nombre de la carpeta es recomendable elegir una carpeta que no esté debajo de “Program Files”. En este caso la carpeta es C:\FIREBIRD3 aunque desde luego puedes elegir cualquier disco y cualquier nombre para la carpeta donde realizarás la instalación.

FIREBIRD3_3

Captura 5. Si haces clic en la imagen la verás más grande

En la Captura 5. vemos las opciones que deberán estar marcadas para instalar al Servidor del Firebird 3.

FIREBIRD3_5

Captura 6. Si haces clic en la imagen la verás más grande

En la Captura 6. vemos las opciones que deben estar seleccionadas si queremos instalar al Cliente del Firebird 3. En una computadora debemos instalar o el Servidor o el Cliente, jamás ambos.

4. En el archivo FIREBIRD.CONF elegir el puerto que usará Firebird 3

El archivo FIREBIRD.CONF lo encontrarás en la misma carpeta donde instalaste al Firebird 3, en este artículo esa carpeta es C:\FIREBIRD3

En el archivo FIREBIRD.CONF hay una entrada llamada RemoteServicePort, que indica el puerto que usará el Servidor del Firebird para comunicarse con los Clientes del Firebird. Por defecto se utiliza el puerto 3050 pero si hay más de una instancia del Firebird ejecutándose cada instancia debe usar un puerto diferente ya que si usan el mismo puerto eso ocasionará conflictos y las bases de datos se corromperán.

FIREBIRD3_13

Captura 7. Si haces clic en la imagen la verás más grande

Aquí se usa el puerto 3053 pero es solamente un ejemplo, tú puedes usar cualquier puerto que quieras. Si ningún programa lo está usando (ni el Servidor del Firebird ni ningún otro programa) entonces todo funcionará ok. Los números bajos no debes usar porque están reservados para el Sistema Operativo, que ya tiene asignados los puertos del 0 al 1023. En general, usar números entre 3050 y 3099 para las instancias del Firebird es muy seguro.

Recuerda que debes borrar el símbolo # que se encuentra a la izquierda. El símbolo # indica que todo lo escrito a su derecha es un comentario.

5. Registrar al Firebird 3 en el Registro del Windows

Para esto debemos abrir una ventanita Símbolo del Sistema con derechos de Administrador y luego ubicarnos en la unidad y en la carpeta donde instalamos al Firebird 3. Recuerda que debes abrirla con derechos de Administrador o no funcionará.

FIREBIRD3_10

Captura 8. Si haces clic en la imagen la verás más grande

FIREBIRD3_11

Captura 9. Si haces clic en la imagen la verás más grande

Después de escribir INSTREG INSTALL, como vemos en la Captura 9., el Firebird 3 quedará guardado en el Registro del Windows.

6. Instalar al Firebird 3 como un servicio del Windows

FIREBIRD3_12

Captura 10. Si haces clic en la imagen la verás más grande

En las Captura 10. se muestra como instalar al Servidor del Firebird 3 como un servicio del Windows y también como iniciar ese servicio. Cada servicio debe tener un nombre, ese nombre puede ser cualquiera que no esté repetido. En nuestro ejemplo el nombre es SERVIDOR_FIREBIRD3 aunque tú puedes elegir otro nombre si lo deseas.

7. Reiniciar el servicio del Firebird detenido en el paso 1.

Después de instalar al Firebird 3 y de haber elegido en el archivo FIREBIRD.CONF el puerto que usará el Firebird 3, debemos reiniciar el servicio que habíamos detenido, para que puedan utilizarse ambas versiones del Firebird (la versión 3 y la versión que habíamos detenido).

FIREBIRD3_14

Captura 11. Si haces clic en la imagen la verás más grande

Conclusión:

Si lo deseamos o lo necesitamos, podemos tener instalados en una sola computadora al Firebird 3 y a otras versiones del Firebird. O a varias versiones del Firebird 3, también.

La forma de conseguirlo la hemos visto en este artículo.

Quizás lo más importante a recordar es que el puerto que usará cada versión debe ser único. Eso porque si dos o más programas usan al mismo puerto solamente podrán ocurrir problemas. Por defecto el Firebird usa el puerto 3050. Si una sola versión del Firebird está en ejecución no hay problema con eso. Pero si dos o más versiones están en ejecución entonces cada versión debe usar un puerto diferente. En este artículo le hemos asignado el puerto 3053 al Firebird 3 pero podríamos haber elegido otro número. En general, números entre 3050 y 3099 son muy seguros y podemos usarlos con tranquilidad.

Artículos relacionados:

¿Por qué Firebird 3?

Los archivos de configuración del Firebird 3

Entendiendo a los plug-in del Firebird 3

Parametrizando el archivo DATABASES.CONF

El tipo de datos BOOLEAN en Firebird 3

El índice del blog Firebird21

El foro del blog Firebird21

Instalando Firebird 3 (1)

4 comentarios

Ahora que ¡¡¡por fin!!! Firebird 3.0 ha sido liberado queremos empezar a usarlo. El primer paso, desde luego, es instalarlo.

Tenemos dos opciones:

  • Tener en nuestra computadora solamente a Firebird 3
  • Tener en nuestra computadora a Firebird 3 y también a una versión anterior de Firebird

En este artículo veremos el caso más sencillo, que es el primero. En el siguiente artículo veremos el segundo caso.

Lo que debemos hacer es:

  1. Desinstalar la versión del Firebird que tenemos
  2. Descargar el instalador del Firebird 3
  3. Instalar el Firebird 3

1. Desinstalar la versión del Firebird que tenemos

Inicio | Panel de Control | Programas y características | Firebird 2.5.5.26952 (o la versión que sea)

Botón derecho para que aparezca un menú contextual y elegir Desinstalar

2. Descargar el instalador del Firebird 3

Nos vamos a la página oficial de descargas:

http://www.firebirdsql.org/en/firebird-3-0-0/

Y descargamos el que corresponde a los bits de nuestro Sistema Operativo (32 bits ó 64 bits).

3. Instalar el Firebird 3

Para asegurarte de que Firebird 3 pueda ser ejecutado debes instalarlo con derecho de Administrador. Para ello, haz clic con el botón derecho sobre el nombre del archivo que descargaste y luego elige la opción Ejecutar como administrador

FIREBIRD3_1

Captura 1. Si haces clic en la imagen la verás más grande

Cuando veas la pantalla donde te pregunta por el nombre de la carpeta es recomendable elegir una carpeta que no esté debajo de “Program Files”.

FIREBIRD3_2

Captura 2. Si haces clic en la imagen la verás más grande

En este caso la carpeta es C:\FIREBIRD3 aunque desde luego puedes elegir cualquier disco y cualquier nombre para la carpeta donde realizarás la instalación.

FIREBIRD3_3

Captura 3. Si haces clic en la imagen la verás más grande

En la Captura 3. vemos las opciones que deberán estar marcadas para instalar al Servidor del Firebird 3.

FIREBIRD3_5

Captura 4. Si haces clic en la imagen la verás más grande

En la Captura 4. vemos las opciones que deben estar seleccionadas si queremos instalar al Cliente del Firebird 3. En una computadora debemos instalar o el Servidor o el Cliente, jamás ambos.

FIREBIRD3_4

Captura 5. Si haces clic en la imagen la verás más grande

 En la Captura 5. vemos las opciones que podemos elegir si lo que estamos instalando es el Servidor.

FIREBIRD3_6

Captura 6. Si haces clic en la imagen la verás más grande

Y en la Captura 6. vemos las opciones que podemos elegir si lo que estamos instalando es el Cliente

 FIREBIRD3_7

Captura 7. Si haces clic en la imagen la verás más grande

En las versiones anteriores del Firebird la contraseña (password) del usuario SYSDBA era siempre masterkey en el momento de la instalación del Servidor. Eso ya no es así con Firebird 3, ahora en el momento de la instalación se puede elegir una contraseña (password). Si ninguna contraseña es elegida entonces se seguirá usando masterkey. Sin embargo hay que tener mucho cuidado con un detalle: las versiones anteriores solamente usaban las primeras 8 letras de la contraseña y por lo tanto masterke y masterkey eran idénticas, exactamente lo mismo. Eso ya no es así con Firebird 3, ahora masterke es diferente de masterkey, son dos contraseñas diferentes.

Artículos relacionados:

¿Por qué Firebird 3?

Los archivos de configuración del Firebird 3

Entendiendo a los plug-in del Firebird 3

Parametrizando el archivo DATABASES.CONF

El tipo de datos BOOLEAN en Firebird 3

El índice del blog Firebird21

El foro del blog Firebird21

 

¡¡¡Firebird 3 es más rápido que MySQL!!!

3 comentarios

Hace muchos años que quienes usamos Firebird deseábamos que su velocidad en Internet fuera comparable a la velocidad de MySQL. La muy buena noticia es que no solamente se lo alcanzó ¡¡¡sino que se lo superó!!!

Firebird 3 es mucho más rápido que Firebird 2.5.x y también ya es más rápido que MySQL.

Con las nuevas capacidades de seguridad y la gran velocidad que posee Firebird 3, ya no hay excusas para no usarlo en Internet.

Más información (en inglés) puedes encontrar en:

http://www.firebirdnews.org/firebird-3-protocol-benchmark/

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

Older Entries