本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 pglogical 从 Amazon EC2 上的 PostgreSQL 迁移至 Amazon RDS for PostgreSQL
由 Rajesh Madiwale (AWS) 编写
环境:PoC 或试点 | 来源:Amazon EC2 | 目标:Amazon RDS for PostgreSQL |
R 类型:更换平台 | 工作负载:开源 | 技术:迁移;数据库 |
Amazon Web Services: Amazon RDS |
Summary
此模式概述了使用 PostgreSQL pglogical 扩展将 PostgreSQL 数据库(版本 9.5 及以上版本)从 Amazon Elastic Compute Cloud (Amazon EC2) 迁移至 Amazon Relational Database Service (Amazon RDS) for PostgreSQL 的步骤。Amazon RDS 现在支持 PostgreSQL 版本 10 的 pglogical 扩展。
先决条件和限制
先决条件
选择正确的 Amazon RDS 实例类型。有关更多信息,请参阅 Amazon RDS 实例类型
。 确保 PostgreSQL 的源版本与目标版本相同。
通过 PostgreSQL on Amazon EC2 安装和集成pglogical扩展
。
产品版本
Amazon RDS 上的 PostgreSQL 版本 10 及以上版本,Amazon RDS 支持这些功能(参见 AWS 文档中的PostgreSQL on Amazon RDS)。这种模式是通过在 Amazon RDS 上将 PostgreSQL 9.5 迁移至 PostgreSQL 版本 10 进行测试,但它也适用于最新版 PostgreSQL on Amazon RDS。
架构
数据迁移架构
![Amazon RDS 上 PostgreSQL 的数据迁移架构](images/pattern-img/29af3931-48de-499f-9c4b-e10a98e4bba5/images/5f5b906f-dc1a-49a5-ae3f-3e10ae854784.png)
工具
pglogical
扩展 PostgreSQL 原生实用程序:pg_dump
和 pg_restore
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
创建 Amazon RDS PostgreSQL 数据库实例。 | 在 Amazon RDS 中设置 PostgreSQL 数据库实例。有关说明,请参阅 Amazon RDS for PostgreSQL 文档。 | 数据库管理员 |
从源 PostgreSQL 数据库获取架构转储并将其恢复至目标 PostgreSQL 数据库中。 | 数据库管理员 | |
启用逻辑解码。 | 在 Amazon RDS 数据库参数组,将 | 数据库管理员 |
在源数据库和目标数据库创建 pglogical 扩展。 |
| 数据库管理员 |
在源 PostgreSQL 数据库上创建发布者。 | 若要创建发布者,请运行:
| 数据库管理员 |
创建复制集,添加表格和序列。 | 要在源 PostgreSQL 数据库上创建复制集并将表和序列添加到复制集,请运行:
| 数据库管理员 |
创建订阅用户。 | 若要对 PostgreSQL 数据库创建订阅用户,请运行:
| 数据库管理员 |
创建订阅。 | 若要对 PostgreSQL 数据库创建订阅用户,请运行:
| 数据库管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
检查源数据库和目标数据库。 | 检查源数据库和目标数据库,以确认数据迁移正在成功复制。您可以使用 | 数据库管理员 |
相关资源
Amazon RDS 上 PostgreSQL 的逻辑复制(Amazon RDS 文档)
pglogical(存储
库)GitHub 使用逻辑复制将 PostgreSQL 从本地或 Amazon EC2 迁移至 Amazon RDS
(AWS Database 博客)