文档详情

使用IBMDB2MigrationToolkit迁移数据.doc

发布:2017-02-05约3.72千字共8页下载文档
文本预览下载声明
使用 IBM DB2 Migration Toolkit 迁移数据 最近您是否要将应用程序移植到 Linux?、UNIX? 或 Windows? 上的 IBM DB2? Universal Database?(UDB)?您是否想将数据从目前部署的 Oracle 或 SQL Server 转移到 DB2?那么,请通过本文学习如何使用 IBM DB2 Migration Toolkit 来完成这个任务。 简介和背景 本文面向符合以下情况的开发人员、管理员或独立软件提供商(Independent Software Vendors,ISV): 拥有同时支持 IBM DB2 Universal Database (UDB) 和非 IBM 数据库(例如 Oracle 和 SQL Server)的数据库应用程序。 拥有希望将自己的数据从 SQL Server 迁移到 DB2 的客户。 人们常常问我以下问题: 我已经成功地将数据库应用程序移植到 DB2,但是目前还有一些客户在运行 Oracle/SQL Server,而他们希望将生产系统转移到 DB2。我该怎样迁移数据呢? 如果用于非 IBM 平台的数据库模式与用于 DB2 的模式相同(或非常类似),那么可以通过使用 IBM Migration Toolkit (MTK) 来完成数据迁移。因此,本文假设数据库模式的移植已经完成,只关注如何将数据从 Oracle 或 SQL Server 数据库迁移到 DB2(使用 MTK 中的数据迁移功能)。 在本文中,我们将 Oracle 或 SQL Server 数据库称作 源数据库,而将 DB2 数据库称作 目标数据库。我们假设您已经适当创建了一个具有模式的空的目标数据库。 在开始之前,确信您已经: 下载并安装了免费的 IBM DB2 Migration Toolkit 。 有足够的磁盘空间,可以将源数据库卸载到安装了 MTK 的系统的文本文件中。 有一个用来创建源数据库的模式的脚本(用作 MTK 的输入)。 任务 1: 导入用于源数据库的模式脚本 启动 MTK,并单击 Launch the Migration Toolkit product 按钮。 图 1. 启动 MTK 创建一个新的 MTK 项目。您可以随意为该项目起个名字。在下拉菜单中,选择适当的源数据库类型以及目标 DB2 的版本(这里是 DB2 for Linux、UNIX 和 Windows)。 图 2. 创建一个项目 将源 SQL 脚本导入 MTK。MTK 将解析这个脚本,生成源数据库的模式的一个内部 XML 表示。这样,MTK 就知道源数据库的结构。 图 3. 导入源数据库 DDL 脚本 提示:如果使用只包含表的 DDL 的输入脚本,可以提高 MTK 的性能。也就是说,应去掉用于函数、触发器、存储过程等等的 DDL。MTK 只需要知道源表的结构,生成导入/导入脚本即可。 在顶端,您将看到 MTK 有 5 个标签页。在 Covert 标签页中,单击 Convert 按钮。在这一步中,MTK 将解析上一步中提供的输入脚本。如果您的模式有很多对象,那么这一步可能要花几分钟的时间。在完成转换之后,就会进入 MTK 的 Refine 标签页。 图 4. 使用 CONVERT 让 MTK 知道源数据库模式 在 refine 标签页中,检查 Translator Information,并确认所有语法都被接受,而没有任何重大错误。 图 5. 查看 MTK 的 REFINE 标签页 注意,有效错误或警告可以放心地忽略。例如: 16 Duplicate definition of object-name 20 Object name has been changed to new-name 任务 2: 将 Oracle/SQL Server 数据提取到文本文件中 至此,MTK 已经知道源数据库以及需要提取数据的表,现在就可以生成用于 DB2 的数据提取脚本和数据加载脚本。 在 Generate Data Transfer Scripts 标签页中,指定用于数据提取和加载过程的选项。 图 6. 数据提取和加载选项 我们建议选择以下选项: 选项 值 原因 DB2 Data Loading Options 使用 LOAD 我们希望在 DB2 中有一个正确的源数据库数据的副本。因此,这是正确的选项,因为您不希望激活任何触发器。LOAD 也要快于 IMPORT DB2 LOAD/IMPORT mode 使用 REPLACE 当某些表加载失败时,您不希望将数据附加到任何目标表后面,这时应该重现开始加载过程 File Format
显示全部
相似文档