Oracle Database Migration Assistant for Unicode

Oracle Database Migration Assistant for Unicode: Getting Started

Updated: June 2024

To start working with the Oracle Database Migration Assistant for Unicode (DMU), please follow these steps:

1. Learn about the DMU

To learn about the basic features of the tool, read the DMU Data Sheet. For more in-depth information, see the user's guide in the DMU Documentation Library. Check also the Frequently Asked Questions.

2. Check if your database and operating system platform are supported

Go to Supported Configurations and check if the current DMU release is supported with your database release and platform.

To avoid network overhead, Oracle recommends that you run the DMU on the machine that hosts the database to be migrated. If this recommendation is in conflict with what platforms are supported, make sure that the DMU host is connected to the database host with a fast LAN.

3. Check for additional restrictions in Release Notes

Refer to DMU Release Notes for any additional restrictions on databases to be migrated.

4. Download and install the appropriate database patch (DMU 2.1 only)

If the page Configurations under Sustaining Support shows that a patch is required for your database, go to My Oracle Support website and download the patch. Alternatively, click on the direct link below:

You will need to log in with your My Oracle Support account credentials that give you access to database patches. Select the patch corresponding to your database release and platform.

Follow the instructions in the patch installation README to install the patch.

5. Install the required PL/SQL package in the database

The interface between the DMU client and the DMU functionality in the database kernel is the PL/SQL package SYS.DBMS_DUMA_INTERNAL. This package is not installed by default. After any required database patches have been installed, start an SQL*Plus session in the Oracle Home of your database, log in with SYSDBA credentials, and run the script ?/rdbms/admin/prvtdumi.plb:

$ sqlplus / as sysdba

SQL*Plus: Release Production on Mon Nov 6 08:04:48 2017

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 
 - 64bit Production


Library created.

Package created.

No errors.

Package body created.

No errors.

6. Download and install JDK

The DMU requires Java SE Development Kit in version 11. If you do not have JDK 11 installed on the host machine on which you want to run the DMU, download the JDK from here (click the JDK "Download" button) or ask your hardware vendor about JDK availability for your platform. Match the architecture of your platform (32-bit vs. 64-bit) with the architecture of the JDK. Follow the installation instructions in the accompanying documentation. Write down the directory into which you have installed the JDK as later you will need to provide the DMU with the path to the Java Runtime executable java or java.exe.

7. Download and install the DMU software

The DMU is available from its OTN download page. It is also available from My Oracle Support (MOS) as Patch #36716892. Both download packages are identical but they are covered by different licenses. The OTN download is covered by the standard OTN Developer License, which only entitles you to evaluate the product. The MOS download is covered by your database license and your database support contract, which give you the right to use the tool to migrate production databases. To download the software from MOS, click on the patch number above and log in with MOS credentials associated with a valid support identifier for an Oracle Database support contract.

While DMU 23.1 is the current, supported release, the release DMU 2.1 is still available from My Oracle Support (MOS) as Patch #21138450 for those customers who want to migrate an Oracle database from release older than DMU 23.1 does not allow a connection to such database. Note: Oracle Database releases older than are covered by Sustaining Support only; so is the migration process with DMU 2.1.

The previous DMU releases are now in the Sustaining Support as well and are no longer available for download. Bug fixes will be released for the DMU 23.1 release only.

To install the DMU, extract the downloaded archive into any target folder/directory using an un-ZIP utility for your platform. Make sure the utility retains the subdirectory structure from the archive. The extraction target folder/directory is referenced as the DMU installation folder/directory in this document.

Note: For security reasons, make sure the extracted files are writable only by those operating system users with access to the DMU host who are authorized to run the DMU against all relevant databases. Otherwise, malicious users could modify the DMU files to make the DMU execute arbitrary SQL statements when it is later started by a privileged user and connects to a database as SYSDBA.

8. Start the tool

To start the DMU:

  • If on Microsoft Windows:

    • Within the DMU installation folder, open the folder dmu\
    • To start the DMU, double-click dmuW32.exe (on Windows 32-bit) or dmuW64.exe (on Windows 64-bit)
    • To start the DMU with a Java runtime output (console) window, which may contain debugging messages for troubleshooting purposes, double-click dmu32.exe or dmu64.exe correspondingly instead
    • For your convenience, create a shortcut to dmuW32.exe (dmuW64.exe) and place it on your desktop or in the Quick Launch area of the Windows taskbar
  • If on a Unix-based operating system:

    • Within the DMU installation directory, go to the sub-directory dmu/
    • Set the execution bit of the script by running:

      $ chmod u+x
    • Make sure the /bin/bash shell is available and run:

      $ ./
    • If your window manager allows it, create a shortcut to run the application by simply clicking on an icon

When started for the first time, the DMU asks for the path to the JDK installation directory. Enter the correct path. On Windows, you can also click the Browse button in the provided dialog box and select the java.exe executable in the JDK bin sub-folder. Make sure to choose the JDK with the right architecture (32-bit vs. 64-bit).

The provided path is saved so that you do not have to reenter it the next time you start the DMU. If you select a wrong path and you want the DMU to ask for it again, exit the DMU and do one of the following: (i) on Microsoft Windows, locate the file dmu\dmu\bin\dmu32.conf (or dmu\dmu\bin\dmu64.conf, correspondingly) in the DMU installation folder, remove the line starting with SetJavaHome and save the file, or (ii) on a Unix-based operating system, remove the file $HOME/.dmu_jdk. Now, when you start the DMU, it will ask for the path again.

9. Create a database connection

Before you can connect to a target database to start its migration process, you need to define a connection by providing the name of a database administrative user, its password, and the network connection data: the target database host name, the TNS listener port, and the database service name. The specified user must have the SYSDBA privilege in the database. Refer to the DMU guide for more details.

10. Install the DMU repository

When you connect for the first time to a database, you will be prompted to install a DMU migration repository. Install the repository as described in the DMU guide. The DMU does not function without a repository.

11. Start the migration process

Now, you are ready to begin the migration process to Unicode, as described in the DMU documentation. You will scan the database to identify convertibility issues, cleanse the database from these issues, and run the actual conversion step.

12. Start the validation process

If your database is already in a Unicode character set, you can use the DMU to validate that the database contents is really in the declared character set. Regular checks may help you spot any application or ETL configuration issues quickly, preventing illegal data to build up in the database. See the DMU guide for more details.