19.6 同步复制
这些设置影响内置的流复制特性(参见第26.2.5节)。数据库服务或为主节点,或为备节点。主节点发送数据,备节点接收并应用数据。若使用级联复制(参见第26.2.7节),备节点既可做主节点也可做备节点。
19.6.1 数据发送服务
以下参数可用于发送数据到备端的服务,即主节点。
max_wal_senders(integer)
备节点最大并行连接数。默认为10。若为0则禁用同步。
max_replication_slots(integer)
指定支持的最大复制槽数量。默认为10。wal_level至少设置为replica。
wal_keep_size(integer)
指定pg_wal目录中保留的最小日志文件大小,以备备端使用。
max_slot_wal_keep_size(integer)
wal_sender_timeout(integer)
断掉超过此时间限制的非活动复制会话。
track_commit_timestamp(boolean)
记录事务提交时间。默认为off。
19.6.2 主节点服务
这些参数可设置在主节点。
synchronous_standby_names(string)
指定支持同步复制的备节点,参见第26.2.8节。其中的列表是备节点的application_name的值。如果是物理复制,则为primary_conninfo中,默认为cluster_name或walreceiver;若为逻辑复制,则在订阅连接信息中。
vacuum_defer_cleanup_age(integer)
指定VACUUM和HOT更新将延迟清除已删除行版本的事务的数量。默认为0,即立马清理。
19.6.3 备节点
以下设置控制备节点行为。
primary_conninfo(string)
连接主节点的连接信息。格式参见第33.1.1节。
primary_slot_name(string)
指定源端复制槽。
promote_trigger_file(string)
在备端指定一个终止恢复的触发文件。
hot_standby(boolean)
定义是否可在恢复期间进行查询,参见第26.5节。默认为on。
max_standby_archive_delay(integer)
当启用热备,该参数用以决定备节点查询等待与正查询数据冲突的数据应用的等待时间,参见第26.5.2节。
max_standby_streaming_delay(integer)
wal_receiver_create_temp_slot(boolean)
wal_receiver_status_interval(integer)
hot_standby_feedback(boolean)
hot_standby_feedback(boolean)
wal_receiver_timeout(integer)
断掉超过该时段限制的非活动会话。
wal_retrieve_retry_interval(integer)
等待WAL的重试时间间隔。
recovery_min_apply_delay(integer)
延迟应用。
19.6.4 订阅者
这些设置控制逻辑复制订阅者的行为。注:wal_receiver_timeout、wal_receiver_status_interval和wal_retrieve_retry_interval对逻辑复制同样有影响。
max_logical_replication_workers(int)
最大逻辑复制进程数。默认为4。
max_sync_workers_per_subscription(integer)
每个订阅者最大同步进程数。默认为2;