↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

支持中的版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发中的版本: 19 / 20devel
已结束支持的版本: 13 / 12 / 11 / 10
开发快照。 PostgreSQL 20devel 尚未正式发布,内容仍可能变化。

29.13. 配置设置 #

逻辑复制需要设置若干配置选项。这些选项只在复制的一侧生效。

29.13.1. 发布端 #

wal_level 必须设置为 replica 或 logical。

max_replication_slots 必须至少设置为预期连接的订阅数量,再加上用于表同步的预留量。

逻辑复制槽还会受到 idle_replication_slot_timeout 的影响。

max_wal_senders 应至少设置为 max_replication_slots,再加上同时连接的物理副本数量。

逻辑复制 walsender 还会受到 wal_sender_timeout 的影响。

29.13.2. 订阅者 #

max_active_replication_origins 必须至少设置为将添加到订阅端的订阅数量,再加上用于表同步的预留量。

如果任何订阅启用了 retain_dead_tuples,max_replication_slots 必须至少设置为 1。

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 的影响。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.