从 IBM Db2 for iSeries 数据库迁移到 Amazon Aurora PostgreSQL
关键要点
在现代化和迁移主机工作负载时,可以采用自动重构的迁移模式,使用 Blu Age 工具与 Qlik Replicate 进行数据迁移。本文介绍了如何将 IBM Db2 for iSeries 数据库迁移到 Aurora PostgreSQL 的步骤,包括使用 Blu Age 工具进行数据库的重构和使用 Qlik Replicate 完成数据的迁移。
通过实施这些步骤,可以有效地将数据从现有的本地数据库平滑迁移到云端,满足现代化需求并提高数据管理效率。
在主机现代化和迁移工作负载的过程中,自动重构是常用的迁移模式之一,使用了 Blu Age 工具。此模式通常需要将主机数据从本地数据库如 IBM Db2 for iSeries解锁,以便迁移到云中,因此在迁移数据的技术约束和步骤方面,我们需要提供指导。随着对主机现代化的需求不断增加,特别是自动重构的方法,使得指导客户和合作伙伴完成这个过程显得尤为重要。
在本文中,我们展示了如何使用 Qlik Replicate 将 IBM Db2 for iSeries 数据库迁移到 Aurora PostgreSQL,这个过程是基于 Blu Age 的自动化转型技术进行的主机现代化项目。
解决方案概述
以下部分我们将说明将 IBM Db2 for iSeries 数据库迁移到 Aurora PostgreSQL 的两步流程:
使用 Blu Age 重构工具将源数据库转化为目标数据库。使用 Qlik Replicate 从源数据库迁移数据包括完整迁移和变更数据捕捉 CDC。首先,我们通过 Blu Age 现代化工具将源 IBM Db2 for iSeries 数据库重构为目标 Aurora PostgreSQL 数据库。重构引擎会生成一个功能上等价于原数据库的目标数据模型。为了实现这一目标,重构引擎会对目标模型进行一些调整:
修改内容描述数据库模式目标表属于单一数据库和唯一的数据库模式。物理文件原始数据库的每个物理文件在目标数据模型中反映为一张表,字段反映为列。逻辑文件原始数据库的每个逻辑文件在目标数据模型中反映为索引。多成员表PostgreSQL 默认将分区附加到每张表,以反映主机数据库中的多成员表。主键每张表增加五列:技术主键、记录插入时间、记录更新时间、源文件和成员文件名。接下来,我们将展示如何使用 Qlik Replicate 一次性迁移数据完整搬迁以及持续复制CDC,将源 IBM Db2 for iSeries 数据库中的数据迁移到目标 Aurora PostgreSQL 数据库。迁移团队会寻找尽可能快地装载数据的方法,并确保目标中的数据质量。
在制定策略时,需要考虑以下要点:
表集定义: 需要定义具体要加载到目标中的表列表。数据量: 确认整个表集后,数据量对策略至关重要。迁移方法: 可选择一次性迁移Big bang或迭代迁移。工具: 数据迁移脚本作为现代化过程的一部分生成,并包含在交付的文档中。数据准备: 迁移的数据应加载到二级存储库进行检查。测试: 整个迁移过程中应持续进行测试,以确保数据质量。安全性: 确保安全性至关重要,包括建立最小权限原则的用户和适当的网络规则。前提条件
进行此操作所需的前提条件如下:
一个有效的 AWS 账户一个用于访问数据库的 堡垒主机:可以是 Windows 或 Linux 系统。一个具有读取数据权限的本地 Db2 iSeries 数据库。一个配备了创建和部署数据库对象权限的目标 Aurora DB 实例。合适的防火墙配置,用于建立本地数据库与 Amazon EC2 和目标数据库的连接。Qlik Replicate 设置完成。数据库访问工具 pgAdmin,AS400/Db2 客户 IBMiAccessv1r1 和 IBMiAccessv1r1WindowsAPEnglish。创建源和目标端点所需的数据库凭据。使用 Blu Age 重构源数据库
我们利用 Blu Age 数据库现代化和速度工具进行代码重构。生成的交付内容包含数据库迁移脚本及其输入文件 DatabasemodernizationXXXXzip。
Blu Age 重构团队负责提供创建目标数据库所需的工件DDL 脚本及重构步骤。以下截图展示了 Blu Age 工件及数据库迁移脚本的文件结构。
压缩包包含以下文件夹:
database 包含从二进制 EBCDIC 转换为 PostgreSQL 的迁移脚本和配置。scripts 迁移的配置和实现。数据库迁移步骤
进行数据库迁移的步骤如下:
连接到 EC2 跳转服务器。具体指引请参考 使用 EC2 实例连接。使用 pgAdmin 工具创建目标 Aurora PostgreSQL 数据库。打开 Blu Age 团队交付的脚本文件:DatabaseModernizationscripts。自定义数据库配置文件 DBbeforepref,配置文件位置为 scriptsconfigsdb。plaintextdatabaseType=POSTGREadminDataBaseName=postgresadminDataBaseUser=[输入用户名]adminDataBasePassword=[输入密码]dataBaseHost=[输入数据库主机名]dataBasePort=[输入数据库端口]dataBaseName=[输入数据库名]dataBaseUser=[输入用户名]dataBasePassword=[请输入密码]
运行 migratebeforecmd 命令。监控日志文件 migrationlogs。监控并验证目标数据库中的对象。打开 pgAdmin 会话,运行以下查询以检查记录数量:sqlWITH tbl AS ( SELECT tableschema TABLENAME FROM informationschematables WHERE TABLENAME NOT LIKE pg AND tableschema IN (public))
SELECT tableschema TABLENAME (xpath(/row/c/text() querytoxml(format(SELECT COUNT() AS c FROM II tableschema TABLENAME) FALSE TRUE )))[1]textint AS rowsnFROM tblORDER BY rowsn DESC
为应用用户授予权限,在目标 Aurora 数据库上运行以下查询:sqlCREATE ROLE [输入角色名称] WITHLOGINNOSUPERUSERNOINHERITNOCREATEDBNOCREATEROLENOREPLICATIONGRANT [输入 pgadmin 用户] TO [输入角色名称]GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO [输入角色名称]
使用 Qlik Replicate 从源数据库迁移数据
在此部分,我们将详细说明如何使用 Qlik Replicate 完成数据迁移和复制的步骤。
闪连vp n下载安卓版安装和配置 Qlik Replicate
按照 Qlik Replicate 设置和用户指南 进行数据复制工具的安装和配置。使用 QlikReplicateltversionbuildgtX64exe 安装包来安装 Qlik Replicate。在使用 Qlik Replicate 进行数据复制和迁移时,请注意相关的 限制和注意事项。按照安装向导的说明安装 Qlik Replicate。若要启动或停止 Qlik Replicate Server 服务,请参考 在 Windows 上启动和停止 Qlik Replicate Server 服务。注册 Qlik Replicate 许可证
首次使用 Qlik Replicate 时,打开控制台后会提示注册复制管理许可证。您也可能需要根据 Qlik 销售代表的需求注册复制分析许可证。
在许可证页面上应用许可证,如以下截图所示。
定义和管理 Qlik Replicate 用户权限
您可以根据用户要执行的任务授予 Qlik Replicate 用户不同的权限。可用的四种预定义角色包括:管理员 (Admin)、设计师 (Designer)、操作员 (Operator) 和查看者 (Viewer),每个角色均有其特定的权限。具体如下表:
角色Active Directory 组管理员AttunityReplicateAdmins设计师AttunityReplicateDesigners操作员AttunityReplicateOperators查看者AttunityReplicateViewers以下截图展示了如何管理 Qlik Replicate 的用户权限。
Qlik Replicate 控制台
您可以从与 Qlik Replicate 服务器安装在同一网络的计算机上使用支持的网页浏览器访问 Qlik Replicate 控制台。您可以通过计算机的 开始 菜单打开控制台。要启用和控制对 Qlik Replicate 的访问,您可以创建用户角色,具体指引请见 用户权限。要打开 Qlik Replicate,请在 开始菜单 中找到 Qlik Replicate,选择 Qlik Replicate 控制台。以下截图展示了如何启动 Qlik Replicate 控制台。
定义 Qlik Replicate 端点
开始设计任务之前,您必须将源 IBM Db2 和目标 Aurora PostgreSQL 数据库的端点添加到 Qlik Replicate 服务器。添加端点时必须提供连接信息和适当的用户凭据。有关受支持数据库的列表,请查看 支持的平台和端点。按照步骤添加 IBM Db2 for iSeries 源端点 到 Qlik Replicate。以下截图展示了如何定义 Qlik Replicate 任务的端点。
在 高级选项 中,选择 跳过 Journals 验证 和 使用表和模式系统名称。在 内部参数 下,选择 UseShortColObjectNames、KeepTraillingSpaces,并将 additionalConnectionProperties 设置为 QRYSTGLMT=NOMAXQUERYTIMEOUT=0。
在迁移到以下任何数据库时,您需要配置基于 PostgreSQL 的端点:
PostgreSQLAurora PostgreSQLAmazon RDS for PostgreSQL请按照步骤将 PostgreSQL 数据库作为目标 添加到 Qlik Replicate。
创建和管理 Qlik Replicate 数据迁移任务
在 Qlik Replicate 服务器中添加了端点后,您可以使用这些端点构建复制任务。有关如何将端点添加到复制任务的信息,请参考 将源和目标端点添加到任务。最初的步骤是定义数据存储的源端点和数据复制到的目标端点。在设计模式下,将添加的端点拖入任务图。下一步是 选择要复制的表和视图。有关 Qlik Replicate 数据类型的更多信息,请查看 Replicate 数据类型。
定义 Qlik Replicate 全局规则
全局规则是一种在同一任务中对多个表和列进行更改的有效方法。您可以定义转换规则,以在传输到目标之前修改源数据或元数据,并定义筛选规则以确定哪些记录将复制到目标。
以下截图展示了如何创建 Qlik Replicate 全局规则。

配置 Qlik Replicate 数据迁移任务
设计完成任务后,您可以使用 Qlik Replicate 一键运行并监控其进度。
可用的选项有:
开始处理 此选项仅在首次运行任务时可用。此操作将进行初始的完整加载操作。如果任务的变更处理功能已启用,变更处理将在源端点的任何更改发生后开始。恢复处理 继续从停止的点恢复任务。重新加载目标 该选项在启用完整加载或完整加载和应用更改复制选项时可用。以下截图展示了使用 Qlik Replicate 进行数据的完整迁移。
导出和导入 Qlik Replicate 任务
您可以将复制任务导出到文件json,并将其导入到另一个 Qlik Replicate 服务器实例。这使您可以在不同环境中使用在 Qlik Replicate 中创建的任务。例如,如果您在开发环境中创建了任务,并希望在生产环境中使用该任务,您可能需要更改任务信息,例如改变端点的连接字符串。
有关更多信息,请参阅 [导出任务](https//helpqlikcom/enUS/replicate/