|
Oracle® Migration Workbench User's Guide
Release 10.1.0 for Microsoft Windows 98/2000/NT/XP and Linux x86 Part No. B15857-01 |
|
![]() Previous |
![]() Next |
This chapter describes how Oracle Migration Workbench (Migration Workbench) works to migrate a third-party database to an Oracle database. It also describes the migration process and tasks you should perform to plan the migration project. It contains the following sections:
An Oracle database provides you with better scalability, reliability, increased performance, and better security than other third-party databases. For this reason, organizations migrate from their current database, such as Microsoft SQL Server and Microsoft Access, to an Oracle database. Because a database migration can be a complicated process, Oracle provides you with Migration Workbench. Migration Workbench is a tool that helps you to migrate from third-party databases to an Oracle database. This document describes the migration process and how to use Migration Workbench to migrate a third-party database to an Oracle database.
Migration Workbench captures information from the source database and displays it in the Source Model, which is a representation of the structure of the source database that is stored in the Workbench repository. Migration Workbench enables you to migrate the data, including schema objects, triggers, and stored procedures. Migration Workbench uses its own repository, called the Workbench repository, to store migration information that is persistent for the life of the migration. It allows you to modify the Source Model and generate an equivalent Oracle Model. The Oracle Model is a representation of the structure of the destination database and is stored in the Workbench repository. Migration Workbench populates the Oracle Model using the information from the Source Model. You can then use the information in the Source Model and the Oracle Model to compare database objects, identify conflicts with Oracle reserved words, and manage the migration progress.
This section describes the components of Migration Workbench and how they work together to migrate a third-party database to an Oracle database. Figure 1-1 shows how Migration Workbench and plug-ins read the information from the source database and creates the Oracle database. Migration Workbench uses the information stored in the Workbench repository to migrate to the Oracle database. You can use the Oracle Model and the Source Model to identify changes that you must make to the Source Model or the Oracle Model before migrating.
Migration Workbench provides a user interface, including wizards, that help you migrate third-party databases to an Oracle database. Migration Workbench includes the following wizards and scripts:
Capture wizard to capture the source database
Migration wizard to migrate the Source Model to the Oracle Model
Scripts to create a set of files that describe the database structure and also to copy data from the source database to the destination database
Individual plug-ins are available to migrate different third-party databases to an Oracle database. You must install at least one plug-in with Migration Workbench.
Migration Workbench uses a plug-in to:
Extract data from the data dictionary of the source database
Create the Source Model
Convert the Source Model to the Oracle Model
Individual plug-ins are available to migrate different third-party databases to an Oracle database.
The Workbench repository is a set of tables in an Oracle database that stores the Source Model and the Oracle Model and other information about the migration. By storing the Source Model and the Oracle Model in the Workbench repository, you can customize the migration without affecting the production environment. The Workbench repository saves dependency information about the database that you are migrating.
Oracle recommends that you use an Oracle Database 10g, Oracle9i, or Oracle8i database to store the Workbench repository. However, if you prefer, you can store the information in the default Workbench repository that is installed with Migration Workbench.
|
Note: The default Workbench repository is only available for Windows installations. |
The stages of Migration Workbench process are as follows:
In this stage, you use Migration Workbench to extract the metadata from the data dictionary of the source database and populate the Source Model of the Workbench repository. There are two methods you can use during this stage, as follows:
Use the Capture wizard to connect to the source database, extract the database structure, and populate the Source Model.
Use Migration Workbench offline capture scripts to run against the source database and create a set of files that describe the database structure. You can then use Migration Workbench to populate the Source Model from these files.
Chapter 4, "Capturing a Source Database" describes these tasks in more detail.
To access the destination database for migration purposes, you must have the following roles and privileges:
|
Note: You must grant these privileges directly to a user account. Granting the privileges to a role, which is subsequently granted to a user account, does not suffice. You cannot migrate a database as the user [SYS]
|
Roles
CONNECT WITH ADMIN OPTION RESOURCE WITH ADMIN OPTION
Privileges
ALTER ANY ROLE ALTER ANY SEQUENCE ALTER ANY TABLE ALTER TABLESPACE ALTER ANY TRIGGER COMMENT ANY TABLE CREATE ANY SEQUENCE CREATE ANY TABLE CREATE ANY TRIGGER CREATE PUBLIC SYNONYM WITH ADMIN OPTION CREATE ROLE CREATE TABLESPACE CREATE USER DROP ANY SEQUENCE DROP ANY TABLE DROP ANY TRIGGER DROP TABLESPACE DROP USER DROP ANY ROLE GRANT ANY ROLE INSERT ANY TABLE SELECT ANY TABLE UPDATE ANY TABLE
For example, you can create a user called omwb_user with the minimum required privileges required to migrate a database using Migration Workbench by using the following command:
CREATE USER omwb_user IDENTIFIED BY omwb_user; GRANT CONNECT, RESOURCE, CREATE PUBLIC SYNONYM TO omwb_user WITH ADMIN OPTION; GRANT ALTER ANY ROLE, ALTER ANY SEQUENCE, ALTER ANY TABLE, ALTER TABLESPACE, ALTER ANY TRIGGER, COMMENT ANY TABLE, CREATE ANY SEQUENCE, CREATE ANY TABLE, CREATE ANY TRIGGER, CREATE ROLE, CREATE TABLESPACE, CREATE USER, DROP ANY SEQUENCE, DROP ANY TABLE, DROP ANY TRIGGER, DROP TABLESPACE, DROP USER, DROP ANY ROLE, GRANT ANY ROLE, INSERT ANY TABLE, SELECT ANY TABLE, UPDATE ANY TABLE TO omwb_user;
In this stage, you use Migration Workbench to map the source database metadata, displayed in the Source Model, to similar Oracle schema objects in the Oracle Model. The Capture wizard automatically creates the Oracle Model by default. You can customize both the Source Model and the Oracle Model at a later stage.
Chapter 5, "Creating and Customizing the Oracle Model" describes this task in more detail.
In this stage, you use Migration Workbench to migrate the source database to an Oracle database. Migration Workbench extracts schema object information from the Oracle Model and creates these objects in the destination database. After it has created the schema objects in the Oracle database, it populates these objects with the data from the source database. Chapter 6, "Migrating the Database" describes this task in more detail.
Migration Workbench replicates some source database system functions. These replicated source functions are created in the omwb_emulation schema. Migration Workbench creates public synonyms for these functions so that all users in the destination database can access the functions.
Benefits of using Migration Workbench to migrate a third-party database to an Oracle database are as follows:
Reduces the effort and risks involved in a migration project
Allows you to make informed decisions based on the amount of automated migration you can achieve
Simplifies the process of migrating data and applications from third-party databases to an Oracle database
Allows you to migrate an entire third-party database, including triggers and stored procedures
Provides an integrated, visual environment to help you manage the migration process
Displays a representation of the Source Model and Oracle Model so that you can compare
Provides feedback of the migration through reports
Allows you to customize the Source Model and Oracle Model to maximize the automation of the migration process
Allows you to collect metadata from a third-party database without having to connect to that database with Migration Workbench
Eases the migration process by allowing you to perform the migration in stages using intuitive wizards
All the plug-ins of Migration Workbench support tables, indexes, and users. Table 1-1 lists the features of the source databases that are supported or supported with limitations by Migration Workbench:
|
See Also: For more information about specific feature support, see the reference guide for the third-party database that you are migrating. |
Table 1-1 Third-Party Database Features Supported by Migration Workbench
| Feature | Sybase Adaptive Server and Microsoft SQL Server | Microsoft AccessFoot 1 | Informix Dynamic Server | MySQLFoot 2 | IBM DB2/400 | IBM DB2 UDB |
|---|---|---|---|---|---|---|
|
Stored Procedures |
Yes |
No |
Yes |
N/A |
N/A |
No |
|
Triggers |
Yes |
N/A |
Yes |
N/A |
No |
No |
|
Views |
Yes |
YesFoot 3 |
Yes |
N/A |
YesFoot 4 |
No |
|
ConstraintsFoot 5 |
Yes |
YesFoot 6 |
Yes |
Yes |
No |
YesFoot 7 |
|
Groups |
Yes |
N/A |
Yes |
N/A |
N/A |
Yes |
|
Embedded SQL |
N/A |
N/A |
YesFoot 8 |
N/A |
N/A |
N/A |
|
Multiple databases |
Yes |
No |
Yes |
Yes |
No |
Yes |
Use Migration Workbench for Windows to migrate the following third-party databases to an Oracle Database 10g, Oracle9i, or Oracle8i database:
IBM DB2/400 V4R3 and V4R5
IBM DB2 UDB 6, 7.1, and 7.2 (Oracle Migration Workbench Beta)
Informix Dynamic Server 7.3
Informix Dynamic Server 9.x (Oracle Migration Workbench Beta)
Microsoft Access 2.0, 95, 97, 2000
This release of Migration Workbench also allows you to migrate a Microsoft Access 2.0, 95, 97, or 2000 database to an Oracle9i Lite database.
Microsoft SQL Server 6.5, 7.0, and 2000
MySQL 3.22, 3.23, and 4.x
Sybase Adaptive Server 11 and 12
Use Migration Workbench for Linux x86 to migrate the following third-party databases to an Oracle Database 10g, Oracle9i, or Oracle8i database:
Informix Dynamic Server 7.3
Informix Dynamic Server 9.x (Oracle Migration Workbench Beta)
MySQL 3.22, 3.23, and 4.x
Sybase Adaptive Server 11 and 12