AWS DMS错误-无法使用插件在源PostgreSQL示例上建立逻辑复制

jckbn6z7  于 2022-11-04  发布在  PostgreSQL
关注(0)|答案(3)|浏览(228)

我在尝试将一个postgre数据库(不是RDS)复制到另一个postgre数据库(也不是RDS)时遇到这个错误。我遇到这个连接错误,但是端点(源和目标)测试成功。有什么想法吗?
错误:上一个错误无法使用插件在源PostgreSQL示例上建立逻辑复制。请遵循来自https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html的“PostgreSQL作为DMS中的源”的所有先决条件从子任务0,线程0收到任务错误通知[reptask/replicationtask.c:2880] [1020490]剩余的1条错误消息被截断。请检查任务日志以查找详细信息停止原因FATAL_ERROR错误级别FATAL

kxeu7u2r

kxeu7u2r1#

我使用DMS来减少过度配置的RDS存储大小。在源端点和目标端点的db参数组中设置以下值,然后重新启动。如果在Postgres配置中添加相同的值,这可能会对非RDS端点有所帮助。

logical_replication = 1
max_wal_senders = 10
max_replication_slots = 10
wal_sender_timeout = 0
max_worker_processes = 8
max_logical_replication_workers = 8
max_parallel_workers = 8
max_worker_processes = 8
bzzcjhmw

bzzcjhmw2#

您至少需要在源数据库配置中设置logical_replication = 1
然后设置max_replication_slots = NN大于或等于您计划运行的复制进程数。

holgip5t

holgip5t3#

我在AWS DMS迁移任务中设置ongoing replication时遇到了这个问题。
我将sourcetarget端点Parameter groups的设置更改为如下:

session_replication_role = replica
rds.logical_replication = 1
wal_sender_timeout = 0

并将其余设置保留为默认设置

max_replication_slots = 20
max_worker_processes = GREATEST(${DBInstanceVCPU*2},8)
max_logical_replication_workers = null
autovacuum_max_workers =  GREATEST({DBInstanceClassMemory/64371566592},3)
max_parallel_workers = GREATEST(${DBInstanceVCPU/2},8)      
max_connections = LEAST({DBInstanceClassMemory/9531392},5000)

相关问题