2024年9月26日: PostgreSQL 17 发布!
支持版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:开发版
不支持的版本:11 / 10

29.11. 配置设置 #

逻辑复制需要设置几个配置选项。大多数选项仅与复制的一方相关。但是,max_replication_slots 在发布者和订阅者上都使用,但对两者具有不同的含义。

29.11.1. 发布者 #

wal_level 必须设置为 logical

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

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

逻辑复制 walsender 也受 wal_sender_timeout 影响。

29.11.2. 订阅者 #

max_replication_slots 必须至少设置为将添加到订阅者的订阅数量,加上一些用于表同步的预留。

max_logical_replication_workers 必须至少设置为订阅数量(对于 leader 应用工作进程),加上一些用于表同步工作进程和并行应用工作进程的预留。

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

提交更正

如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步说明,请使用 此表单 报告文档问题。