31.10. 配置设置#
逻辑复制需要设置多个配置选项。大多数选项仅与复制的一方相关。但是,max_replication_slots在发布者和订阅者上都使用,但对每个发布者和订阅者而言具有不同的含义。
31.10.1. 发布者#
wal_level必须设置为logical。
max_replication_slots必须至少设置为预期连接的订阅数,以及一些用于表同步的预留。
max_wal_senders应至少设置为与max_replication_slots相同,加上同时连接的物理副本数。
逻辑复制 walsender 也受wal_sender_timeout影响。
31.10.2. 订阅者#
max_replication_slots必须至少设置为将添加到订阅者的订阅数量,外加一些表同步预留。
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的影响。
