注意:

使用 OCI GoldenGate 使用 PostgreSQL 将 Amazon RDS for PostgreSQL Database 迁移到 OCI 数据库

简介

Oracle Cloud Infrastructure Database with PostgreSQL(OCI Database with PostgreSQL) 是一项全托管式服务,可在创建或删除数据库表时自动扩展存储。这简化了管理并优化了存储成本。数据在传输中和静态都是加密的。OCI GoldenGate 支持逻辑在线迁移,支持通过 PostgreSQL 服务数据库实现 OCI 数据库的无缝转换和近乎零停机迁移。

The following images shows the architecture for migrating an Amazon Relational Database Service PostgreSQL (Amazon RDS for PostgreSQL) database to OCI Database with PostgreSQL service using OCI GoldenGate, the pg_dump and the pg_restore utility.

OCI Database for PostgreSQL 当前支持版本 14 和 15。在本教程中,我们使用的是版本 15。元数据迁移将使用 pg_dumppg_restore 实用程序完成。初始加载和数据复制将使用 OCI GoldenGate 完成。

图像

注:确保在 OCI GoldenGate 部署、源数据库和目标数据库之间建立连接。

目标

先决条件

任务 1:为 PostgreSQL 实例创建 Amazon RDS

登录 AWS 控制台并为 PostgreSQL 创建 RDS 实例。输入必需的信息,如以下图像所示。

图像

图像

图像

图像

图像

任务 2:创建自定义参数组并修改必需参数

连接到 RDS 实例并转至配置选项卡。查找 DB 实例参数组,应将其设置为默认值。现在,单击创建参数组以创建单独的参数组,并输入必需的信息,如以下图像中所示。

图像

图像

图像

图像

任务 3:使用 PostgreSQL 数据库创建 OCI 数据库

登录到 OCI 控制台并转到数据库,然后单击创建数据库

图像

图像

图像

图像

任务 4:创建 OCI 计算实例并安装 PostgreSQL 客户端以实现连接

我们需要在 OCI 控制台中创建 OCI 计算实例,并使用以下命令安装 PostgreSQL。

sudo dnf install -y postgresql15*
psql --version

任务 5:测试从 OCI 计算实例到源和目标的连接

  1. 转到 AWS 控制台并获取 AWS 端点以实现连接。

    图像

  2. 运行以下命令以连接到 PostgreSQL 实例的 Amazon RDS。

    图像

  3. 转到 OCI 控制台,使用 PostgreSQL Endpoint 获取 OCI Database 以实现连接。

    图像

  4. 运行以下命令以使用 PostgreSQL 实例连接到 OCI 数据库。

    图像

任务 6:创建 OCI GoldenGate 部署和测试连接

  1. 转到 OCI 控制台并导航到 Oracle Database ,然后单击 GoldenGate 以创建 OCI GoldenGate 部署。

    图像

  2. 输入以下信息并确保将选择技术作为 PostgreSQL

    图像

  3. 选择区间和专用子网作为子网。要访问部署控制台,请确保启用公共访问。这需要在创建部署期间启用,否则将禁用它。

    图像

  4. 单击创建密码密钥可提前创建密码密钥。在创建期间,OCI GoldenGate 部署请求密钥,而不是纯文本密码。

    图像

    应在创建后提供部署。

    图像

  5. 使用以下映像中所示所需的信息,为 PostgreSQL 的 Amazon RDS 和具有 PostgreSQL 数据库的 OCI 数据库创建连接。

    图像

    图像

    图像

    图像

  6. 将这些连接分配给 Assigned connection 下的 OCI GoldenGate 部署,并测试连接是否成功。

    图像

    图像

    图像

Task 7: Migrate Schema Metadata from Amazon RDS for PostgreSQL Instance to OCI Database with PostgreSQL

我们使用一个测试方案来测试迁移。

  1. 运行 pg_dump 命令以执行元数据方案导出。

    图像

    图像

  2. 运行以下命令以将此元数据转储还原到具有 PostgreSQL 数据库的目标 OCI 数据库。

    图像

  3. 运行以下命令以检查是否在目标数据库中创建了所有对象。

    图像

任务 8:配置 OCI GoldenGate 提取和复制流程以进行迁移

  1. 转到 OCI GoldenGate 控制台,导航到管理,然后单击提取以创建初始加载提取流程。

    图像

  2. 添加提取中,选择作为文件,选择初始加载需要文件作为源类型

    图像

    图像

  3. 输入文件名的参数文件并将其从 3 个字符修改为 2 个字符,因为 Replicat 参数仅支持 2 个字符。

    图像

  4. 创建增量同步的提取流程并使用所需的信息进行注册,如下图中所示。

    图像

    图像

  5. 启动初始加载提取处理,并检查报告文件中的初始加载和 LSN。

    图像

    图像

  6. 使用从初始加载提取中获取的提交序号 (CSN) 启动更改数据捕获 (CDC) 处理。

    图像

    图像

  7. 使用所需信息创建并启动初始加载的复制进程,如以下映像中所示。

    图像

    图像

    图像

    图像

  8. 检查初始报告复制进程的报告。

    图像

  9. 在初始加载后为数据同步创建复制,并开始使用所需的信息,如以下映像中所示。

    图像

    图像

    图像

    图像

  10. 如果正在复制数据,请运行以下命令来检查源和目标。

    图像

    图像

    图像

    图像

    图像

任务 9:问题和故障排除

确认

更多学习资源

通过 docs.oracle.com/learn 浏览其他实验室,或者通过 Oracle Learning YouTube 频道访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心