数据库迁移服务 - Aurora PostgreSql -> CloudSQL 失败并出现令人困惑的错误(无法删除表 postgres)

问题描述 投票:0回答:1

尝试从 AWS Aurora PostgreSQL 13.4 迁移到 Google Cloud SQL PostgreSQL 13。 迁移作业出现此错误:

完成设置复制,但出现错误:无法删除数据库“postgres”:generic::unknown:重试预算耗尽(10次尝试):pq:数据库“postgres”正在被其他用户访问

DMS 使用的用户仅对源数据库(Aurora)具有 SELECT 权限

我很困惑为什么它试图删除“postgres”数据库。不确定它是否正在尝试删除源或目标中的数据库。不知道我错过了什么。

我已经在目标数据库(pg_cron)中安装了必要的扩展。没有区别。

源数据库中的用户对文档中概述的所有表/模式(包括 pg逻辑模式)有 SELECT

我在目标集群中尝试了各种 PostgreSQL 版本(13.x、14.x)。没有区别。

创建迁移作业时的“测试连接”工具没有显示任何错误。 (有一些关于没有主键的表的警告,但仅此而已。)

postgresql google-cloud-platform database-migration google-cloud-sql amazon-aurora
1个回答
0
投票

这似乎是 Google Cloud SQL 端的一个问题,专门与 pg_cron 相关。以下解决方法对我有用:

  1. 在目标 Cloud SQL 实例上禁用 pg_cron 标志
  2. 开始迁移
  3. 迁移完成后,它将处于错误状态,并显示有关 pg_cron 不可用的消息。尽管出现该错误,迁移已完成并且复制正在运行
  4. 在目标上启用 pg_cron 标志并重新启动
  5. 在目标上手动设置 pg_cron 作业(它们没有被复制)
  6. 将副本提升为主节点(如果需要)
© www.soinside.com 2019 - 2024. All rights reserved.