迁移到新的目标集群

本页面介绍了如何将数据库迁移到 Database Migration Service 在您配置迁移作业时代表您创建的新 AlloyDB for PostgreSQL 集群。如果您的迁移有不同的要求,请考虑遵循不同的迁移流程。如需了解详情,请参阅 指南:迁移到现有 AlloyDB for PostgreSQL 集群。

概括来讲,持续迁移遵循以下步骤:

  1. 配置源数据库,以允许 Database Migration Service 将数据复制到新数据库。
  2. 创建来源连接配置文件。
  3. 创建持续迁移作业,并配置新的 AlloyDB for PostgreSQL 目标集群。
  4. 启动和监控持续迁移作业。
  5. 提升迁移作业、审核权限,并将应用流量重定向到新集群。

费用

在本文档中,您将使用Google Cloud的以下收费组件:

如需根据您的预计使用量来估算费用,请使用价格计算器。

准备工作

  1. 验证此迁移路径是否可以完全支持您的场景。 请参阅以下页面:
    • 场景概览页面上的 支持的来源和目标列出了所有支持的来源和目标版本。
    • 已知限制介绍了支持的数据类型、数据库大小和其他操作边界。请注意,Database Migration Service for AlloyDB for PostgreSQL 支持持续迁移。
    • 不同的源数据库可以使用不同的网络连接方法。在开始迁移过程之前,请先规划网络连接。 如需了解详情,请参阅 网络概览。

      迁移到新的目标集群不支持 Private Service Connect 接口连接。 如果您想使用 Private Service Connect 接口连接,请考虑直接在 AlloyDB for PostgreSQL 中预先创建目标集群(请参阅 指南:迁移到现有 AlloyDB for PostgreSQL 集群)。

  2. 考虑要在哪个区域创建目标数据库。 Database Migration Service 是一款完全区域性的产品,这意味着与迁移相关的所有实体(源连接配置文件、迁移作业和目标集群)都必须位于单个 Google Cloud 区域中。
  3. 在 Google Cloud 控制台的项目选择器页面上,选择或 创建 Google Cloud 项目。

    转到“项目选择器”

  4. 启用 Database Migration Service、AlloyDB for PostgreSQL 和 Compute Engine API。

    启用 API

所需的角色

如需获得使用 Database Migration Service 执行到 AlloyDB for PostgreSQL 的同构 PostgreSQL 迁移所需的权限,请让管理员为您授予项目的所需 IAM 角色:

如需详细了解如何授予角色,请参阅 Identity and Access Management 文档中的 管理访问权限。

这些预定义角色包含使用 Database Migration Service 执行从 PostgreSQL 到 AlloyDB for PostgreSQL 的同构迁移所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需使用 Database Migration Service 执行从 PostgreSQL 到 AlloyDB for PostgreSQL 的同构迁移,您需要拥有以下权限:

  • datamigration.*
  • alloydb.clusters.create
  • alloydb.clusters.get
  • alloydb.clusters.list
  • alloydb.clusters.update
  • alloydb.clusters.delete
  • alloydb.instances.create
  • alloydb.instances.get
  • alloydb.instances.list
  • alloydb.instances.update
  • alloydb.instances.delete
  • alloydb.operations.get
  • alloydb.users.list
  • alloydb.users.get
  • alloydb.users.create
  • alloydb.users.update
  • alloydb.users.delete

您也可以使用 自定义角色或其他 预定义角色来获取这些权限。

准备源数据库

如需为源数据库做好迁移准备,请按以下步骤操作:

  1. 选择并配置源网络连接方法。

    对于公共 IP 许可清单连接性:稍后,在 Database Migration Service 创建目标集群后,您可能需要将 AlloyDB for PostgreSQL 传出 IP 地址添加到防火墙许可清单中。请咨询您的网络管理员,了解如何以最佳方式安排此类配置更改。

  2. 配置源数据库实例。概括来讲,这包括以下步骤:
    1. 在源数据库和要迁移的所有数据库上安装 pglogical PostgreSQL 扩展程序(2.2.1 版或更高版本)。
    2. 配置 PostgreSQL 参数:设置 wal_level = logical,并确保 max_replication_slots、max_wal_senders 和 max_worker_processes 的值足够大。
    3. 向迁移用户授予复制权限,并配置 pg_hba.conf 以允许传入连接。

    如需详细说明,请参阅 配置源数据库。

  3. 创建来源连接配置文件。

创建并运行迁移作业

如需配置和运行迁移,请执行以下步骤:

  1. 可选:如果您想为目标集群管理自己的加密密钥,请 准备客户管理的加密密钥 (CMEK)。
  2. 创建并运行迁移作业。

    您可以使用 Database Migration Service 可观测性功能监控迁移进度和目标集群运行状况。请参阅 迁移作业指标。

完成迁移

当您决定将应用流量切换到新的 AlloyDB for PostgreSQL 集群时,请按照以下步骤完成迁移:

  1. 停止对源数据库执行的所有写入操作。您可以将源数据库设置为只读模式,以便在割接期间保留查询功能。
  2. 提升迁移作业。提升迁移作业会完成所有剩余 CDC 事件的复制,切断复制流,并将目标 AlloyDB for PostgreSQL 集群建立为独立、完全运行的主集群。
  3. 可选: 验证迁移数据的完整性和一致性。

后续步骤

详细了解 AlloyDB for PostgreSQL 的架构、功能和管理。请参阅 AlloyDB for PostgreSQL 概览。