逻辑复制需要设置若干配置选项。这些选项只在复制的一侧生效。
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 必须至少设置为订阅数量(用于主应用工作进程),再加上用于表同步工作进程 和并行应用工作进程的预留量。
可能还需要调整 max_worker_processes 以容纳复制工作进程,至少应为 (max_logical_replication_workers + 1)。注意,一些扩展和并行查询也会占用 max_worker_processes 的工作进程槽位。
max_sync_workers_per_subscription 控制订阅初始化或新增表时初始数据复制的并行度。
max_parallel_apply_workers_per_subscription 控制订阅参数 streaming = parallel 时,进行中事务流式复制的并行度。
逻辑复制工作进程还会受到 wal_receiver_timeout、 wal_receiver_status_interval 和 wal_retrieve_retry_interval 的影响。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。