将 Google Cloud for PostgreSQL 作为 AWS DMS 的来源 - AWS Database Migration Service

将 Google Cloud for PostgreSQL 作为 AWS DMS 的来源

在使用 AWS DMS 时,您可以将 Google Cloud for PostgreSQL 作为来源,其方式与自管理 PostgreSQL 数据库大致相同。

有关 AWS DMS 支持作为来源的 GCP PostgreSQL 版本的信息,请参阅AWS DMS 的源

有关更多信息,请参阅 将 PostgreSQL 数据库作为 AWS DMS 源

设置 Google Cloud for PostgreSQL 以进行逻辑复制和解码

在数据库迁移期间,您可以使用 Google Cloud for PostgreSQL 中的逻辑复制和解码功能。

对于逻辑解码,DMS 使用以下插件之一:

  • test_decoding

  • pglogical

如果 pglogical 插件在源 PostgreSQL 数据库上可用,则 DMS 使用 pglogical 创建复制插槽,否则使用 test_decoding 插件。

请注意以下通过 AWS DMS 使用逻辑解码的相关注意事项:

  1. 使用 Google Cloud for PostgreSQL,通过将 cloudsql.logical_decoding 标志设置为 on 来启用逻辑解码。

  2. 要启用 pglogical,请将 cloudsql.enable_pglogical 标志设置为 on,然后重新启动数据库。

  3. 要使用逻辑解码功能,请使用 REPLICATION 属性创建一个 PostgreSQL 用户。使用 pglogical 扩展时,用户必须具有 cloudsqlsuperuser 角色。要创建具有 cloudsqlsuperuser 角色的用户,请执行以下操作:

    CREATE USER new_aws_dms_user WITH REPLICATION IN ROLE cloudsqlsuperuser LOGIN PASSWORD 'new_aws_dms_user_password';

    要在现有用户上设置此属性,请执行以下操作:

    ALTER USER existing_user WITH REPLICATION;
  4. max_replication_slots 参数设置为您计划同时运行的最大 DMS 任务数。在 Google Cloud SQL 中,此参数的默认值是 10。此参数的最大值取决于 PostgreSQL 实例的可用内存,每 GB 内存允许使用 2 到 8 个复制插槽。

有关使用 PostgreSQL 的逻辑复制的更多信息,请参阅以下主题: