Automatically migrating from Talend XML database to a relational database or between two relational databases - 6.1

Talend MDM Platform Migration Guide

EnrichVersion
6.1
EnrichProdName
Talend MDM Platform
task
Installation and Upgrade
EnrichPlatform
Talend Activity Monitoring Console
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend DQ Portal
Talend ESB
Talend Identity Management
Talend Installer
Talend JobServer
Talend Log Server
Talend MDM Server
Talend MDM Web UI
Talend Project Audit
Talend Repository Manager
Talend Runtime
Talend SAP RFC Server
Talend Studio

If you want to migrate from your system objects and master records from an XML database to a relational database, you can do so automatically using the dbmigration tool.

You can follow the same procedure below to migrate between two relational databases.

Prerequisite(s): Make sure that both MDM servers are up and running.

Warning

If you need to migrate between two databases on a single machine, you must run the two MDM servers side by side. You can do this by setting a different port binding on the target server.

For further information about running multiple instances of Tomcat on the same machine, see Talend Installation Guide.

To migrate master data objects from an XML database to a relational database, do the following:

  1. In the target MDM server, browse to:

    <$INSTALLDIR>/tools/dbmigration

  2. Save a copy of the dbmigration.properties.template file giving it the name dbmigration.properties, for example.

  3. Open the new dbmigration.properties file using a text editor.

  4. In the "from" list, set the connection information to the source server.

    In the "to" list, set the connection information to the target server.

    If you want to migrate from 5.X, one configuration example is given below:

    ####from 5.X using EJBs####
    from.host=localhost
    from.user=admin
    from.password=talend
    from.jndi.port=1199
    
    to.url=http://192.168.32.191:8280/talendmdm
    to.home=D:\\Talend\Talend-MDMServer
    to.user=administrator
    to.password=administrator
    to.cluster.batch.size=500

    If you want to migrate from 6.X, one configuration example is given below:

    ####from 6.X using REST####
    from.url=http://localhost:8180/talendmdm
    from.user=administrator
    from.password=administrator
    
    to.url=http://192.168.32.191:8280/talendmdm
    to.home=D:\\Talend\Talend-MDMServer
    to.user=administrator
    to.password=administrator
    to.cluster.batch.size=500

    If the data containers and data models in your source server do not have the same names (for example, if the ProductDemo data container uses the Product data model), you must also use the following syntax in the dbmigration.properties file to specify how they are connected: <data container>.datamodel=<datamodel>.

    For example:

    ProductDemo.datamodel=Product

    Note

    For entities that have Foreign Keys to themselves (for example, Person might have a FK relation 'is child of' to Person), the migration process does not ensure the correct insertion order. As a result, the validation of such records may fail even though data integrity is correct. To avoid this, it is recommended you disable FK integrity checks for the FK field in the data model editor.

  5. Run the appropriate dbmigration file for your system (dbmigration.bat for Windows and dbmigration.sh for Linux).

    Give the CommandLine the file name you set as a parameter, as follows:

    Windows: dbmigration.bat dbmigration.properties

    Linux: dbmigration.sh dbmigration.properties

  6. If needed, you can do the migration in an interactive mode by adding the parameter "-i" to the CommandLine when running the dbmigration script for your system.

    You will be prompted which data model needs to be migrated. Enter Y to select the data model you want to migrate, or enter N to skip the data model you do not want to migrate.

  7. Restart the target server in order to complete the migration process.

Note

If the source and target servers are running on the same machine and using different port bindings, stop the source server and then launch the target server on the desired port.

This will migrate the data objects from the source server to the target server in line with the connection information defined in the file.