Skip Headers
Oracle® Migration Workbench User's Guide
Release 10.1.0 for Microsoft Windows 98/2000/NT/XP and Linux x86
Part No. B15857-01
  Go To Table Of Contents
Contents
Go To Index
Index

Previous
Previous
Next
Next
 

1 Introduction

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:

Overview

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.

How Migration Workbench Works

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.

Figure 1-1 Migration Workbench Architecture

Description of arch.gif follows
Description of the illustration arch.gif

Migration Workbench

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.

Plug-in

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.

Workbench Repository

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.

Using Migration Workbench in the Migration Process

The stages of Migration Workbench process are as follows:

Capturing the Source Database

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.

Accessing the Destination Database

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;

Creating and Customizing the Oracle Model

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.

Migrating from the Source Database to the Oracle Database

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 Migration Workbench

Benefits of using Migration Workbench to migrate a third-party database to an Oracle database are as follows:

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


Footnote 1 Has support for relations, link tables, and application code reuse.
Footnote 2 Has ENUM support.
Footnote 3 Views are not parsed and are known as Queries in Microsoft Access.
Footnote 4 Views are not parsed.
Footnote 5 Constraints include foreign keys, primary keys, and check constraints.
Footnote 6 Validation rules not supported.
Footnote 7 Constraints are not parsed.
Footnote 8 ESQL/C to Pro*C

Supported Third-party Databases

Use Migration Workbench for Windows to migrate the following third-party databases to an Oracle Database 10g, Oracle9i, or Oracle8i database:

Use Migration Workbench for Linux x86 to migrate the following third-party databases to an Oracle Database 10g, Oracle9i, or Oracle8i database: