10.13 Migrating Data from Identity Applications Database into Workflow Engine Database

Applies only when you are upgrading Identity Applications component from Identity Manager 4.7.5 to Identity Manager 4.9.

10.13.1 Considerations Before Migrating

Before migrating the data, review the following considerations:

  • Ensure that the database user has all privileges to modify the database.

  • The Roles and Resource driver should not be started until the data export and import operations are completed.

10.13.2 Procedure

  1. Log in to the Identity Applications server.

  2. Copy the Workflow-Migration.zip file from the <location where you have mounted the ISO>/user_application/IDM_Tools/ directory to /home directory and unzip the file.

  3. Copy the jdbc.jar (for example, sqljdbc42.jar) file to /home/WorkflowMigration/WEB-INF/lib/ directory and rename the file as jdbcDriver.jar.

  4. Stop the Roles and Resource Service driver.

  5. Start Tomcat.

  6. Run the following commands to export the data:

    [postgres] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e wf_db_migration.zip -surl jdbc:postgresql://ip:port/idmuserappdb -suser idmadmin -spwd ***** -sdb postgres -sbatch 1000 -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
    [oracle] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e wf_db_migration.zip -surl jdbc:oracle:thin:@IP:1521:idmdb -suser idmadmin -spwd **** -sdb oracle -sbatch 1000 -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e wf_db_migration.zip -surl "jdbc:sqlserver://IP:1433;databaseName=idmdb" -suser idmadmin -spwd ***** -sdb mssql -sbatch 1000 -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
  7. After upgrading Identity Applications component and the database, stop Tomcat and run the following commands to import the data:

    IMPORTANT:Unzip the wf_db_migration.zip folder exported using the workflow migration tool to a specified directory, then input the unzipped folder name in the import command. Also, make sure that the -archive option is set to false when you are providing unzipped folder name. It reduces the migration time significantly.

    [postgres] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i wf_db_migration -archive false -durl jdbc:postgresql://IP:port/igaworkflowdb -duser idmadmin -dpwd ***** -ddb postgres -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
    [oracle] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i wf_db_migration -archive false -durl jdbc:oracle:thin:@IP:1521:igadb -duser idmadmin -dpwd novell -ddb oracle -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i wf_db_migration -archive false -durl "jdbc:sqlserver://IP:1433;DatabaseName=igadb" -duser idmadmin -dpwd **** -ddb mssql -tables afmodel,afprocess,afdocument,afactivity,afactivitytimertasks,afbranch,afcomment,afprovisioningstatus,afquorum,afworktask,configuration,email_approval_token,localization,processed_eba_mails
  8. Start the Roles and Resource Services driver.

  9. Start Tomcat.

10.13.3 Workflow Migration Utility Command Usage

The following options are supported with the jar:

-e                   Export to ZIP file name. Example: wf_db_migration.zip

-i                   Import data from ZIP file name. Example: wf_db_migration.zip

-archive             For unzipped folder, input false. Default value is true.

-surl                Source Server protocol (Example: jdbc:ip:port/idmuserappdb)

-suser               Source database username (default: idmadmin)

-spwd                Source Database user password

-sdb                 Source Database (Example: postgres)

-sbatch              Batch size for exporting the data in chunks (default: 100)

-durl                Destination Database Server jdbc URL (Example: jdbc:ip:port/ igaworkflowdb)

-duser               Destination Server IP adrress(default: idmadmin)

-dpwd                Destination Database user password

-ddb                 Destination Database (Example: postgres)

-tables              List of tables for export/import

-f <filename>        Use this option for silent mode, load values from property file. This will override other options passed to this utility

-D user.home         User home directory to write the imported data received as input stream

-D tmp.dir           Temporary directory to unzip the imported data if archived (zip)

-archive             Boolean flag to check whether data gets archived for import or export

10.13.4 How Long Does Database Migration Take?

Data migration into the workflow database can take anywhere between a few minutes to several hours. The following table lists the average time taken for import and export operations in all supported databases using the workflow migration utility:

Database Size (in terms of number of records)

Time Taken for Export Operation

Time Taken for Import Operation

5 million

3 minutes

56 minutes

6 million

4 minutes

1 hour 10 minutes

10 million

6 minutes

1 hour 50 minutes

15 million

7 minutes

2 hours 40 minutes

The migration time increases in proportion to the data size. The larger the volume of data, the longer it takes to migrate data. For example, if the database contains more than 15 million records, each additional million records adds an extra 1 minute to the export time and 15 minutes to the import time. Additionally, migration times vary depending on the hardware configuration of the database and application servers, such as memory, CPU core count, and disk write speed. Therefore, NetIQ recommends taking these factors into account when planning a database migration.