Oracle9i数据迁移改善工作流程(oracle9i迁移数据)

Oracle9i数据迁移改善工作流程

随着数据库技术的不断发展,数据库的数据量不断增长,数据迁移的重要性也日益凸显。在此背景下,利用Oracle 9i的迁移工具实现数据迁移变得越来越流行。本文将介绍如何利用Oracle 9i 的PowerDesigner和Data Migration Assistant数据迁移工具来改善工作流程。

一、Power Designer工具

PowerDesigner是一款全面的数据建模和设计工具,可用于设计数据库和应用程序。PowerDesigner可支持多个数据库平台,包括Oracle、SQL Server、IBM DB2等等,且在数据库物理模型设计方面表现优异。PowerDesigner也是一个强大的数据迁移工具,可通过图形化界面进行数据转移。

1.1 迁移步骤

以下为PowerDesigner 集成的数据迁移的六个主要步骤:

1. 导出源数据库模型:

在PowerDesigner 中,通过“Export Physical Model to DBMS Data Definition Language” 面板可以将数据模型导出到DDL脚本,中间可能需要进行一些适当的调整。

2. 生成目标数据库模式: ,

在Oracle9i中,创建新模式时可以通过传递DDL脚本来实现。

3. 执行迁移:

用SQLPLUS或PL/SQL Developer执行DDL脚本,导入源数据库模型。

4. 数据加载:

将源数据库中的所有表连接到目标数据库并加载数据。

5. 检查数据:

验证源数据是否与目标数据相同,可以使用比较工具,如WinMerge或Beyond Compare等进行数据比较。

6. 调整:

如果存在任何问题,修改数据库本身或修改源数据库模型并重新开始迁移过程。

以上这六个步骤可以有效优化数据迁移的过程,缩短迁移时间,减少不必要的错误。

1.2 示例

以下代码列出了在PowerDesigner中使用的一个示例:

1.建立一个新的本地数据库映射:

CREATE DATABASE MyNewDB SYBASE;

2.使用“逆向工程操作”将源数据库模型载入PowerDesigner:

RENAME COLUMN [dbo].[supplier].[supplier_code] TO [ dbo].[supplier].[ code];

ALTER TABLE [dbo].[supplier] CHANGE [tax_no] [tax_number] CHAR[10];

3.导出数据模型,通过这个DDL脚本可以在一个新的Oracle 9i数据库中创建同样的表和数据类型:

CREATE TABLE [supplier]

(supplier_id INT NOT NULL,

name CHAR(25) NOT NULL,

tax_number CHAR(10) NULL,

address CHAR(50) NOT NULL,

city CHAR(25) NOT NULL,

state CHAR(2) NOT NULL,

PRIMARY KEY (supplier_id));

4.导出模型并生成相应的向导脚本。

导出模型将步骤1-3中的动作导出到aep文件,生成相应的向导脚本使其他用户能够复制这些动作

5.执行迁移脚本。

利用SQL*Plus连接到Oracle 9i数据库,使用SQL语句执行最近生成的迁移脚本。

二、数据迁移助手DMA

DMA是使用Java编写的Data Migration Assistant。DMA工具能够帮助Oracle数据库用户轻松地将第三方数据库迁移到Oracle9i数据库。它提供了源到目标数据库之间的直接数据迁移。 DMA工具支持的资源包括Microsoft SQL Server、Microsoft Access和Sybase Adaptive Server Anywhere等。

DMA和PowerDesigner工具不同,DMA工具没有集成化的界面,但其优点是可以编写多种类型的数据迁移。DMA 工具的大部分代码都是Java编写的,因此工具的可移植性更好。DMA工具具有高度的可扩展性,并支持各种不同的数据源。

1. 使用DMA 工具迁移数据的步骤:

1. 下载 DMA 工具。

下载DMA工具最新版本,与Oracle 9i版本匹配。

2. 连接到源数据库。

连接到要移动数据的源数据库。

3. 创建目标数据库。

创建要将数据移动到的目标数据库

4. 指定数据对象。

选择需要移动的数据对象

5. 执行数据迁移。

选择需要迁移的数据,然后执行数据迁移

2.示例

以下代码列出了使用DMA工具的一个示例:

JDBC数据库URL:

jdbc:odbc:bookstore

DB类型:

MS Access

JDBC驱动程序类:

sun.jdbc.odbc.JdbcOdbcDriver

从数据源选择表名称:

SELECT BOOK_NAME, AUTHOR_NAME, ISBN, EDITION, PUBLISHER_NAME

FROM BOOKS

将数据迁移到Oracle数据库:

oracle.jdbc.driver.OracleDriver

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=myorcldbserv)))

书籍目标表格:

BOOK_LIST

对于大型数据集,可能需要对上面的不同步骤进行切分以便更好地进行跟踪和调试。

三、总结

本文介绍了如何使用PowerDesigner和数据迁移助手DMA两种数据迁移工具优化数据库迁移过程。无论是在PowerDesigner还是DMA工具中,用户都可以选择最合适的工具和步骤以达到最佳效果。同时,这两种工具的使用不是二选一的,而是根据具体需求来选择最合适的工具和方法进行数据迁移操作。


数据运维技术 » Oracle9i数据迁移改善工作流程(oracle9i迁移数据)