对于持续迁移,您可以在准备好将应用切换到目标数据库时启动提升过程。 提升迁移作业会将目标 AlloyDB for PostgreSQL 集群与源断开连接,并将其转换为独立的主集群,以便您可以将应用流量定向到该集群。
- 停止针对源数据库的所有写入操作、运行中的脚本和客户端连接。 割接停机时间窗口自此开始。
- 请等待
复制延迟指标达到或接近零。这可确保迁移作业已处理来自源的所有待处理更改。
即使复制延迟时间不为零,您也可以提升迁移。这可以缩短数据库割接时间,但可能会影响目标数据库中的数据时效性。
- 执行提升操作:
控制台
- 在 Google Cloud 控制台中,前往迁移作业页面。
- 在作业标签页上,点击要提升的迁移作业的显示名称。
系统会打开迁移作业详情页面。
- 在迁移作业工具栏上,点击提升。
系统会显示“提升迁移作业”对话框。
- 在对话框中,确保没有显示任何错误,然后点击提升。
gcloud
在使用下面的命令数据之前,请先进行以下替换:
- 将 MIGRATION_JOB_ID 替换为您的迁移作业标识符。
如果您不知道标识符,可以使用
gcloud database-migration migration-jobs list命令列出给定区域中的所有迁移作业并查看其标识符。 - 将 REGION 替换为保存迁移作业的区域的标识符。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud database-migration migration-jobs \ promote MIGRATION_JOB_ID \ --region=REGION
Windows (PowerShell)
gcloud database-migration migration-jobs ` promote MIGRATION_JOB_ID ` --region=REGION
Windows (cmd.exe)
gcloud database-migration migration-jobs ^ promote MIGRATION_JOB_ID ^ --region=REGION
结果
该操作以异步方式执行。 因此,此命令会返回一个表示长时间运行的操作的 操作实体:
done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: promote name: OPERATION_ID
如需查看操作是否成功,您可以查询返回的操作对象,或检查迁移作业的状态:
- 将
gcloud database-migration migration-jobs describe命令与 MIGRATION_JOB_ID 搭配使用,可查看迁移作业的状态。 - 将
gcloud database-migration operations describe命令与 OPERATION_ID 搭配使用,可查看操作本身的状态。
-
目标 AlloyDB for PostgreSQL 集群已升级。目标集群与来源集群断开连接,成为独立的独立主集群,并准备好接收完整的应用流量。
迁移作业状态会更改为
Completed。 - (可选)重新安装扩展程序:如果您的源数据库使用了 Database Migration Service 未迁移的扩展程序(例如
pg_cron),请在目标集群上重新安装并配置这些扩展程序。 - 现在,您可以将应用连接到 AlloyDB for PostgreSQL 集群,并删除已完成的迁移作业。