Azure Database for PostgreSQL中的迁移服务是什么?

Azure Database for PostgreSQL中的迁移服务简化了将 PostgreSQL 数据库移动到Azure的过程。 迁移服务提供来自各种 PostgreSQL 支持的源的迁移选项,包括从云服务、从本地环境或从Azure中的虚拟机迁移。 迁移服务旨在帮助你轻松且自信地将 PostgreSQL 数据库移动到Azure Database for PostgreSQL灵活服务器。

使用迁移服务的一些优点包括:

  • 托管的迁移服务
  • 支持架构和数据迁移
  • 没有复杂的设置
  • 使用Azure portal或Azure CLI的简单迁移体验
  • 数据库大小无限制

下图显示了可以使用 Azure Database for PostgreSQL 中的迁移服务迁移的 PostgreSQL 源。 所有受支持的环境都可以无缝转换为Azure Database for PostgreSQL。

显示不同 PostgreSQL 源的关系图。

下图描述了从任何 PostgreSQL 源迁移到Azure Database for PostgreSQL灵活服务器所涉及的详细步骤。 此图说明了迁移工作流和迁移的关键阶段,以便成功过渡到Azure Database for PostgreSQL灵活服务器。

描述从单一服务器迁移到灵活服务器的示意图。

为何使用灵活服务器?

Azure Database for PostgreSQL灵活服务器是Azure中下一代托管的 PostgreSQL 服务。 由 PostgreSQL 社区版提供支持的Azure Database for PostgreSQL在灵活服务器部署中可用。

Azure Database for PostgreSQL灵活服务器为数据库和内置成本优化提供了最大的灵活性。 相较于同类产品的优势包括:

  • 卓越性能:Azure Database for PostgreSQL 灵活服务器 在 Linux VM 上运行,是运行 PostgreSQL 引擎的最佳 VM。

  • 成本节省:可以在按需服务器上停止和启动Azure Database for PostgreSQL灵活服务器,以降低作总成本(TCO)。 计算层计费会立即停止,可在开发和测试期间以及针对有时限的可预测生产工作负载节省大量成本。

  • 支持新版本的 PostgreSQL:Azure Database for PostgreSQL 灵活服务器支持所有从版本 11 开始的主要 PostgreSQL 版本。

  • 尽量降低延迟 – 可以将灵活服务器与应用程序服务器共置在同一可用性区域,以尽量降低延迟。

  • 连接池:Azure Database for PostgreSQL灵活服务器通过 pgBouncer 插件提供内置连接池机制,以支持数千个开销较低的活动连接。

  • Server 参数:Azure Database for PostgreSQL灵活服务器提供了一组丰富的服务器参数用于配置和优化。

  • 自定义维护时段 - 可以将灵活服务器的维护时段安排在一周的特定的日期和时间。

  • 高可用性:Azure Database for PostgreSQL灵活服务器支持同一可用性区域中和跨可用区的高可用性,实现在主服务器同步的热备用服务器配置。

  • Security:Azure Database for PostgreSQL 弹性服务器提供多层信息保护和加密来保护数据。

迁移到Azure Database for PostgreSQL灵活服务器

可以从以下选项中进行选择,以便从源 PostgreSQL 服务器迁移到灵活服务器:

脱机迁移:在脱机迁移中,连接到源实例的所有应用程序都会停止。 然后,数据库将复制到灵活服务器。

联机迁移:在联机迁移中,数据库复制到灵活服务器时,连接到源服务器的应用程序不会停止运行。 在创建初始数据库副本后,会通过复制确保灵活服务器与源实例保持同步。 执行切换操作,使灵活服务器与源实例完全同步,从而将停机时间最小化。

下表介绍了脱机和联机选项:

选项 优点 注意事项 建议方案
脱机 - 容易执行,不太复杂。
- 失败的可能性少很多。
- 可以处理的数据库对象数没有限制。
- 应用程序停机时间。 - 最适合简单性和高成功率至关重要的场景。
- 非常适合可以将数据库脱机,但不会对业务运营产生重大影响的场景。
- 适合可以在计划内维护时段内迁移数据库的情况。
联机 - 应用程序停机时间极少。
- 非常适合大型数据库和要求限制停机时间的客户。
- 联机迁移中使用的复制存在一些限制。 例如,所有表中都需要主键。
- 执行起来比脱机迁移更复杂。
- 由于迁移过程比较复杂,失败的可能性更高。
- 如果迁移长时间运行,将对源实例的存储和计算产生影响。 在迁移过程中需要密切监视影响。
- 最适合连续性至关重要且停机时间必须保持在绝对最低水平的企业。
- 建议在需要不中断正在进行的操作的情况下进行数据库迁移时使用。

下表列出了迁移服务支持的源:

PostgreSQL 源类型 脱机迁移 联机迁移
Amazon RDS for PostgreSQL 支持 支持
本地 支持 支持
Azure虚拟机 支持 支持
Amazon Aurora PostgreSQL 支持 支持
Google Cloud SQL for PostgreSQL 支持 支持

迁移设置的屏幕截图,显示了不同的源。

使用迁移服务与Azure Database Migration Service(经典版)相比的优势

以下列表描述了在 Azure Database for PostgreSQL 中使用迁移服务进行 PostgreSQL 迁移的主要优势:

  • 完全托管的服务:Azure Database for PostgreSQL中的迁移服务是完全托管服务。 由我们来处理迁移过程的复杂事项。
  • 全面迁移:支持架构和数据迁移。 将整个数据库环境完整准确地传输到Azure。
  • 设置的简便性:该服务设计为用户友好,消除了可能成为迁移项目启动障碍的复杂设置过程。
  • 没有数据大小约束:能够处理任何大小的数据库,服务将超过 1 TB 的数据迁移限制Azure Database Migration Service(经典),因此它适用于所有类型的数据库迁移。
  • 解决Azure Database Migration Service(经典)限制:迁移服务解决了Azure Database Migration Service(经典)中的许多问题和限制,以实现更可靠的迁移过程。
  • Interface 选项:可以在基于Azure portal的接口之间进行选择,以获取直观的体验或命令行接口(Azure CLI)进行自动化和脚本编写。

开始使用

开始使用迁移服务的方法之一如下:

获取详细信息

Azure Database for PostgreSQL的迁移服务是托管解决方案。 它使用名为 pgcopydb 的二进制文件快速高效地将数据库从源 PostgreSQL 实例复制到Azure。