将 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 使用逻辑解码的相关注意事项:
使用 Google Cloud for PostgreSQL,通过将
cloudsql.logical_decoding
标志设置为on
来启用逻辑解码。要启用
pglogical
,请将cloudsql.enable_pglogical
标志设置为on
,然后重新启动数据库。要使用逻辑解码功能,请使用
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;
将
max_replication_slots
参数设置为您计划同时运行的最大 DMS 任务数。在 Google Cloud SQL 中,此参数的默认值是 10。此参数的最大值取决于 PostgreSQL 实例的可用内存,每 GB 内存允许使用 2 到 8 个复制插槽。
有关使用 PostgreSQL 的逻辑复制的更多信息,请参阅以下主题: