Now that we connected successfully to Firebird through JDBC, let’s see if MySQL Migration Tool can connect and migrate the data to MySQL, our intermediary stage for migrating to Oracle.

Migration from Firebird to MySQL

In addition to what we installed during Part 1, we need to install MySQL 5.0 Community Server, the free version, which comes by default (not the Essential Edition) with MySQL Migration Toolkit.

1. Start MySQL Migration Toolkit

2. Go for Direct Migration

3. Set the Source connection as:

  • Database System: Generic JDBC
  • Class Name: org.firebirdsql.jdbc.FBDriver
  • Connection string: jdbc:firebirdsql:localhost/3050:employee
  • Username: sysdba
  • Password: masterkey

4. Set the Target connection as:

  • Database System: MySQL Server
  • Hostname: localhost
  • Port: 3306
  • Username: root
  • Password:

5. Get Schema information

6. Pick your desired schema to migrate

7. Reverse engineer the schema

8. Select objects to migrate (default all)

9. Set object mapping (go for Generic first)

10. Migrate the Metadata and have the SQL that is generating tables in MySQL

11. Manual edit the Generated code (no changes here for my example)

12. Create objects directly from the migration tool or save the SQL for running it later (do it online)

13. Execution of the DDL against the target database

14. Execution report

15. Data Mapping options, transfer data online or generate a script for running it later (do it online)

16. Data movement from Firebird to MySQL

17. Execution report

That was it!
The next step is migration from MySQL to Oracle

Good luck!

Read also:

Tags: , , , , , ,
2 Responses to “Migrate from Firebird to Oracle step by step – Part 2”
  1. Andrei DANEASA's Blog ยป Migrate from Firebird to Oracle step by step - Part 3 says:

    [...] « Migrate from Firebird to Oracle step by step – Part 2 Nov 27 2008 [...]

  2. Istvan Gyorke says:

    Hello Andrei, I tried to repeat the migration steps with the ‘employee’ database. I used MySQLMigrationTool v.1.1.17 of GUI tools, and “MySQL Workbench CE 5.2.47″ too. With the MySQLMigrationTool I tried jaybird-full-2.1.6 and jaybird-full-2.2.2, with Workbench I established an ODBC datasource. There were no problem with database connection, but I could not get over step 5. Get Schema information: in every configuration I get error that says that schemata names cannot be retrieved.

    Example (for jaybird-full-2.1.6):
    The list of schema names could not be retrieved (error: 0).
    ReverseEngineeringGeneric.getSchemata :o rg.firebirdsql.jdbc.FBDriver
    Details:
    java.net.URLClassLoader$1.run(Unknown Source)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(Unknown Source)
    java.lang.ClassLoader.loadClass(Unknown Source)
    sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    java.lang.ClassLoader.loadClass(Unknown Source)
    java.lang.ClassLoader.loadClassInternal(Unknown Source)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Unknown Source)
    com.mysql.grt.modules.ReverseEngineeringGeneric.establishConnection(ReverseEngineeringGeneric.java:84)
    com.mysql.grt.modules.ReverseEngineeringGeneric.getSchemata(ReverseEngineeringGeneric.java:230)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    com.mysql.grt.Grt.callModuleFunction(Unknown Source)

    Please advise.

    BR, Istvan

Leave a Reply