Firebird
MySQL

Firebird / Interbase to MySQL Converter

Move Firebird or Interbase databases into MySQL, MariaDB, Amazon RDS, or Aurora - or sync data the other way. Schema conversion, type mapping, and optional two-way sync.

A Firebird .fdb database stores its identity keys, type domains, large text and binary objects, and procedural logic in mechanisms that MySQL implements differently.

DBConvert connects to Firebird 2.5 / 3.0 / 4.0 and InterBase sources, including .fdb and .gdb files, and maps their metadata to MySQL tables, columns, indexes, primary keys, and foreign keys with per-table type review and generator-to-AUTO_INCREMENT rewiring suggestions. BLOB subtypes and date semantics are where the type mapping needs the most attention.


  • DBConvert writes to MySQL, MariaDB, Percona Server for MySQL, Amazon RDS / Aurora for MySQL, Azure Database for MySQL, or Google Cloud SQL for MySQL.
  • DBConvert saves the job as a repeatable session so test migrations can be rerun before the final cutover, and DBSync keeps both sides aligned during a staged cutover.

Which tool: DBConvert or DBSync?

DBConvert for Firebird → MySQL

One-time migration or a repeatable saved session. Use it when MySQL or MariaDB is becoming the system of record and you need schema conversion, type mapping, generator-to-AUTO_INCREMENT rewiring suggestions, and cloud target support in a single desktop workflow.

DBSync for Firebird ↔ MySQL

Staged cutover. Use it when the Firebird application must keep running while MySQL is populated, tested, or read by a new application or reporting layer. Review synchronization concepts.

Need more context? Compare DBConvert and DBSync side by side →

How DBConvert handles the Firebird → MySQL differences

DBConvert handles the table-level migration in the wizard: date/time policy, charset, identifiers, generated keys, BLOB mapping, and transfer. Firebird PSQL remains a separate rewrite track.

Date/time policy

Firebird TIMESTAMP maps to MySQL DATETIME by default, preserving range and avoiding MySQL TIMESTAMP timezone conversion.

Charset and identifiers

DBConvert loads text as MySQL utf8mb4 and rewrites Firebird double-quoted identifiers into MySQL-safe backtick quoting.

Generated keys

Firebird generators become MySQL AUTO_INCREMENT primary keys where appropriate, with reseeding checked after the bulk load.

BLOB and load behavior

Text and binary BLOB subtypes map to MySQL LONGTEXT and LONGBLOB. Reserved words are quoted, and bulk load order keeps indexes and foreign keys manageable.

Procedural code boundary

DBConvert migrates tables, views, and foreign keys. Firebird PSQL procedures, triggers, computed-by columns, event handlers, and selectable procedures are rewritten manually in MySQL's stored-procedure dialect.

Type mapping checkpoints

Firebird MySQL Notes
SMALLINT / INTEGER / BIGINT same Direct mapping.
NUMERIC(p,s) / DECIMAL(p,s) DECIMAL(p,s) Direct.
FLOAT / DOUBLE PRECISION FLOAT, DOUBLE Direct.
VARCHAR(n) / CHAR(n) VARCHAR(n) / CHAR(n) CHARACTER SET utf8mb4, not legacy utf8.
BLOB SUB_TYPE 1 (text) LONGTEXT Charset to utf8mb4 on load.
BLOB SUB_TYPE 0 (binary) LONGBLOB Largest tier unless column has a known cap.
TIMESTAMP DATETIME Not MySQL TIMESTAMP (range / TZ semantics differ).
DATE / TIME DATE, TIME Direct.
BOOLEAN (Firebird 3.0+) TINYINT(1) or BOOLEAN alias MySQL stores BOOLEAN as TINYINT(1).
GENERATOR / SEQUENCE AUTO_INCREMENT on the PK column Collapse trigger-based key assignment.
DOMAIN expand inline MySQL has no CREATE DOMAIN.

Firebird PSQL objects - out of scope

DBConvert's migration covers tables (with their fields, types, defaults, and indexes), views, and foreign keys. Firebird PSQL stored procedures, triggers, computed-by columns, and event handlers do not translate to MySQL stored procedures automatically - the converter flags them rather than silently dropping them, and the rewrite is project work rather than part of the row copy.

DBConvert vs other Firebird → MySQL routes

Free routes cover narrow slices: a single-table data copy, a scripted dump, an ETL pipeline. They stop at the boundary where Firebird's generators, domains, BLOB SUB_TYPE fields, and PSQL routines need a MySQL answer - which is most of the actual migration project.

Route Where it fits Where it falls short
DBeaver Data Transfer open-source / community GUI A handful of tables, schema already in place on the MySQL side, no procedural code - right-click the source tables in DBeaver and run the data-transfer wizard. No schema conversion, no domain expansion, no TIMESTAMPDATETIME or BLOB SUB_TYPE handling, no generator rewiring, no PSQL translation, no saved repeatable session, no scheduler. As soon as the schema has generators, domains, or large objects, the work moves back to your hands.
Extract + LOAD DATA INFILE free, vendor-native Tiny Firebird databases with no PSQL routines and no BLOB SUB_TYPE columns. Hand-write the MySQL DDL, dump tables to CSV with isql, then load with LOAD DATA INFILE. Cheap and transparent. You write every type-mapping decision (TIMESTAMPDATETIME, BLOB SUB_TYPELONGBLOB / LONGTEXT, utf8utf8mb4), every identifier-quoting fix, every generator-to-AUTO_INCREMENT conversion, and every PSQL rewrite yourself. No review UI, no rerunnable session, no validation step. Fragile fast on real production schemas.
Pentaho Data Integration open-source ETL platform Teams already running PDI / Kettle who want the Firebird load as one step inside an existing ETL pipeline with transformations and filtering. Significant setup cost for a one-time database move; no built-in Firebird-to-MySQL schema converter, no type-mapping review, no PSQL translator. PDI moves the rows; you still define every mapping rule and rewrite every procedure by hand.
DBConvert / DBSync commercial desktop, Windows Desktop wizard for Firebird / InterBase → MySQL with per-table type-mapping review, generator-to-AUTO_INCREMENT rewiring suggestions, saved sessions for repeated test migrations, scheduler, and CLI. Writes to MySQL, MariaDB, Percona Server, Amazon RDS / Aurora for MySQL, Azure Database for MySQL, and Google Cloud SQL. DBSync keeps both sides aligned during a staged cutover. Commercial license; desktop tool (Windows). PSQL procedures, triggers, computed-by columns, and event handlers do not translate to MySQL stored procedures automatically - rewrite work either way.

The free routes do the data copy, not the migration. A Firebird-to-MySQL project spends most of its time on TIMESTAMPDATETIME decisions, BLOB SUB_TYPE mappings, generator-to-AUTO_INCREMENT rewiring, identifier quoting, and PSQL translation. DBConvert puts each of those decisions in a reviewable wizard, saves the session so test loads are rerunnable, and adds DBSync when the Firebird source must keep running during the cutover. That is what the commercial license buys - not "data copy", which the free routes can already do for tiny schemas.

Supported versions and services

Firebird

  • Firebird 2.x, 3.x, 4.x and InterBase

MySQL

  • MySQL 5.x, 8.x; MariaDB; Percona Server
  • Amazon RDS / Aurora MySQL, Azure Database for MySQL, Google Cloud SQL

How to migrate Firebird to MySQL

When launching the DBConvert or DBSync application in GUI mode, it guides you through the steps to start database migration or synchronization:

1

Connect to Firebird source database

Specify the username/password and host/port parameters if your source database requires login credentials.

Connect to Firebird source database from DBConvert

Firebird source

Point DBConvert at a Firebird .fdb / .gdb file or a Firebird 2.5 / 3.0 / 4.0 server — Firebird source settings. Normalize the source charset to utf8mb4-compatible UTF8 before the load.

2

Connect to MySQL destination database

Specify parameters for the destination database similar to the source, defining connection settings and username/password pairs.

Connect to MySQL target database from DBConvert

MySQL target

Use the MySQL connection guide for local MySQL or MariaDB, or Amazon RDS / Aurora for MySQL, Azure Database for MySQL, or Google Cloud SQL for MySQL. Create the target schema as utf8mb4.

Steps 3-6: the same for every database pair

Source and target are connected - steps 1 and 2 above. What follows is identical whichever two databases you picked, so it lives in one place. Each step below opens at its own section.

Open the full guide

All four steps in one page, plus software features, command-line mode, scheduler, and system requirements.

See all features