迁移指南:从 IBM Db2 到 SQL Server

适用于SQL Server

本指南介绍如何使用适用于 Db2 的 SQL Server 迁移助手 (SSMA) 将用户数据库从 IBM Db2 迁移到 SQL Server。

有关其他迁移指南,请参阅 Azure 数据库迁移指南

先决条件

开始将 Db2 数据库迁移到 SQL Server 之前,请执行以下步骤:

迁移前

满足先决条件后即可查看环境中的拓扑并评估迁移的可行性。

评估和转换

使用 SSMA for Db2 评审数据库对象和数据,并评估数据库是否适合迁移。

要创建评估,请执行以下步骤:

  1. 打开 SSMA for Db2。

  2. 依次选择“文件”和“新建项目” 。

  3. 提供项目名称和位置,然后从下拉列表中选择 SQL Server 迁移目标。 选择“确定”

    SSMA for Db2 中“新建项目”窗格的屏幕截图。

  4. 选择“连接到 Db2”,然后输入 Db2 连接详细信息。

    “连接到 Db2”窗格的屏幕截图。

  5. 右键单击要迁移的 Db2 架构,然后选择“创建报告”以生成 HTML 报告。 或者,可以选择右上方的“创建报告”。

    Db2 元数据资源管理器中“创建报告”链接的屏幕截图。

  6. 查看 HTML 报告,了解转换统计信息以及任何错误或警告。 另外,还可以在 Excel 中打开报表以获取 Db2 对象的清单,以及执行架构转换所需的工作量。 报告的默认位置在 SSMAProjects 内的报告文件夹中,如此处所示:

    drive:\<username>\Documents\SSMAProjects\MyDb2Migration\report\report_<date>

    SSMA 中转换报告的屏幕截图。

验证数据类型

验证默认的数据类型映射,并根据需要对其进行更改(如有必要)。 要创建,请执行以下步骤:

  1. 选择“工具”,然后选择“项目设置” 。

  2. 选择“类型映射”选项卡。

    SSMA for Db2 中“类型映射”窗格的屏幕截图。

  3. 可以通过在“Db2 元数据资源管理器”窗格中选择表名来更改每个表的类型映射。

转换架构

要转换架构,请执行以下步骤:

  1. (可选)若要转换动态或专用查询,请右键单击节点并选择“添加语句”

  2. 选择“连接到 SQL Server”选项卡,然后输入 SQL Server 实例的连接详细信息。

    1. 在“数据库”下拉列表中,选择目标数据库,或提供新名称以在目标服务器上创建数据库。

    2. 提供身份验证详细信息。

    3. 选择“连接”。

      SSMA for Db2 中“连接到 SQL Server”窗格的屏幕截图。

  3. 右键单击要使用的架构,然后选择“转换架构”。 或者,可以选择右上方的“转换架构”选项卡。

    “Db2 元数据资源管理器”窗格上“转换架构”命令的屏幕截图。

  4. 转换完成后,比较转换后的结构与原始结构,以识别潜在问题并根据建议解决这些问题。

    显示转换后的对象与起始对象的比较的屏幕截图。

  5. 在“输出”窗格中,选择“查看结果”图标,然后在“错误列表”窗格中查看任何错误 。

  6. 对于脱机架构修正练习,请通过选择“文件”>“保存项目”来以本地方式保存项目 。 这样做你就有机会在将架构发布到 SQL Server 实例之前,先对源和目标架构进行脱机评估并执行修正。

Migrate

完成对数据库的评估并解决任何分歧后,下一步就是运行迁移过程。

要发布架构并迁移数据,请执行以下步骤:

  1. 发布架构。 在“SQL Server 元数据资源管理器”窗格中,右键单击数据库,然后选择“与数据库同步” 。

    “SQL Server 元数据资源管理器”窗格中“与数据库同步”命令的屏幕截图。

  2. 迁移数据。 在“Db2 元数据资源管理器”窗格中,右键单击要迁移的架构或对象,然后选择“迁移数据” 。 或者,可以选择右上方的“迁移数据”选项卡。

    若要迁移整个数据库的数据,请选中数据库名称旁边的复选框。 若要从单个表中迁移数据,请展开数据库,展开“表”,然后选中表旁边的复选框。 若要忽略单个表中的数据,请清除对应的复选框。

    “迁移数据”链接的屏幕截图。

  3. 提供 Db2 和 SQL Server 实例的连接详细信息。

  4. 迁移完成后,查看“数据迁移报告”。

    数据迁移报告的屏幕截图。

  5. 使用 SQL Server Management Studio (SSMS) 连接到 SQL Server 实例,然后通过查看数据和架构来验证迁移。

    SQL Server Management Server 的屏幕截图。

迁移后

成功完成“迁移”阶段后,需要完成一系列的迁移后任务,确保一切都能尽量顺畅高效地正常进行。

修正应用程序

将数据迁移到目标环境后,之前使用源的所有应用程序都需要开始使用目标。 可能需要对应用程序执行一些更改才能完成此步骤。

执行测试

数据库迁移的测试方法包括以下活动:

  1. 开发验证测试:要测试数据库迁移,需要使用 SQL 查询。 必须创建针对源数据库和目标数据库运行的验证查询。 验证查询应涵盖定义的范围。

  2. 设置测试环境:测试环境应包含源数据库和目标数据库的副本。 请确保隔离测试环境。

  3. 运行验证测试:针对源和目标运行验证测试,然后分析结果。

  4. 运行性能测试:针对源和目标运行性能测试,然后分析和比较结果。

迁移资产

若要获得完成此迁移方案的更多帮助,请参阅以下资源。 这些资源是为支持实际迁移项目而开发的。

标题 说明
数据工作负荷评估模型和工具 为指定工作负载提供建议的“最适合”的目标平台、云就绪性和应用程序/数据库修正级别。 它提供简单的一键式计算和报表生成功能,通过提供统一的自动化目标平台决策过程,帮助加速大规模评估。
IBM Db2 zOS 数据资产发现和评估包 在数据库上运行 SQL 脚本后,可以将结果导出到文件系统上的文件。 支持多种文件格式(包括 CSV),方便你在外部工具(如电子表格)中捕获结果。 如果你想要与未安装工作台的团队轻松共享结果,此方法会很有用。
IBM Db2 LUW 清单脚本和项目 包含一个 SQL 脚本,该脚本查询 IBM Db2 LUW 版本 11.1 系统表,并以 CSV 格式提供以下项的结果:按架构和对象类型提供的对象计数、每个架构中“原始数据”的粗略估计,以及每个架构中表的大小。
IBM Db2 到 SQL Server - 数据库比较实用工具 数据库比较实用工具是可用于验证源和目标平台上的数据是否相同的 Windows 控制台应用程序。 可以使用该工具在所有或所选表、行和列中的行或列级别高效地比较数据。

数据 SQL 工程团队开发了这些资源。 此团队的核心章程是解锁和加速到 Microsoft 的 Azure 数据平台的数据平台迁移项目的复杂现代化进程。