逻辑复制需要设置几个配置选项。这些选项只在一侧的复制中有意义。
wal_level
必须设置为 logical
。
max_replication_slots
必须至少设置为预期的订阅连接数,再加上一些用于表同步的预留。
逻辑复制槽也受 idle_replication_slot_timeout
的影响。
max_wal_senders
应至少设置为与 max_replication_slots
相同,再加上同时连接的物理副本的数量。
逻辑复制 walsender 也受 wal_sender_timeout
的影响。
max_active_replication_origins
必须至少设置为将要添加到订阅者的订阅数,再加上一些用于表同步的预留。
max_logical_replication_workers
必须至少设置为订阅数(用于 leader apply workers),再加上一些用于表同步 worker 和并行 apply workers 的预留。
max_worker_processes
可能需要调整以适应复制 worker,至少是(max_logical_replication_workers
+ 1
)。请注意,一些扩展和并行查询也从 max_worker_processes
中占用 worker 槽。
max_sync_workers_per_subscription
控制订阅初始化或添加新表期间的初始数据复制的并行度。
max_parallel_apply_workers_per_subscription
控制对于订阅参数 streaming = parallel
的进行中的事务的流式传输的并行度。
逻辑复制 worker 也受 wal_receiver_timeout
、wal_receiver_status_interval
和 wal_retrieve_retry_interval
的影响。
如果您在文档中发现任何不正确、不符合您对特定功能的使用经验或需要进一步澄清的内容,请使用 此表格 报告文档问题。