更新时间:2024-05-07 GMT+08:00

备服务器

hot_standby

参数说明:设置是否允许备机在恢复到minrecovery点后接受连接和查询。

该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

  • 如果此参数设置为on,wal_level级别必须设置为hot_standby或以上,否则将导致数据库无法启动。
  • 在分布式环境中,因为会对双机其他一些功能产生影响,hot_standby参数不能设置成off。
  • 如果hot_standby参数曾经被关闭,且wal_level参数曾被设置低于hot_standby等级,那么,再次打开hot_standby参数之前,为了确保主备环境下备机上待回放的日志都可以支持备机查询功能,需要进行如下操作:
    1. 将主、备的wal_level参数调整到hot_standby等级或以上,并重启实例生效。
    2. 在主机上执行checkpoint操作,并通过查询pg_stat_get_wal_senders()系统函数,确认各个备机的receiver_replay_location追上主机当前的sender_flush_location,保证wal_level的调整同步到备机并生效,且备机不需要再回放之前低等级的日志。
    3. 将主、备的hot_standby参数打开(设为on),并重启实例生效。

取值范围:布尔型

  • on表示允许备机在恢复到minrecovery点后接受连接和查询。
  • off表示不允许备机在恢复到minrecovery点后接受连接和查询。

默认值:on

max_standby_archive_delay

参数说明:当开启双机热备模式时,如果备机正处理归档WAL日志数据,这时进行查询就会产生冲突,此参数就是设置备机取消查询之前所等待的时间。当前版本设置暂不生效,统一由参数max_standby_streaming_delay控制。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

-1表示允许备机一直等待冲突的查询完成。

取值范围:整型,范围:-1~2147483647‬,单位为毫秒。

默认值:3s(即3000ms)

max_standby_streaming_delay

参数说明:当开启双机热备模式时,如果备机正通过流复制接收WAL日志数据,这时进行查询就会产生冲突,这个参数就是设置备机取消查询之前所等待的时间。当参数值较大,或业务压力大时,概率出现等待事务回放落盘的报错。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

-1表示允许备机一直等待冲突的查询完成。

取值范围:整型(毫秒),范围:-1~2147483647‬

默认值:3s(即3000ms)

wal_receiver_status_interval

参数说明:设置WAL日志接收进程的状态通知给主机的最大时间间隔。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

当该参数设置为0时,表示关闭备机向主机反馈日志接收位置等信息,可能会导致主机事务提交阻塞、switchover操作失败等异常现象。正常业务场景,不建议将该参数设置为0。

取值范围:整型,0 ~ 2147483,单位为秒。

默认值:5s

hot_standby_feedback

参数说明:设置是否允许将备机上执行查询的结果反馈给主机,这可以避免查询冲突。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:布尔型

  • on表示允许将备机上执行查询的结果反馈给主机。
  • off表示不允许将备机上执行查询的结果反馈给主机。

默认值:off

wal_receiver_timeout

参数说明:设置从主机接收数据的最大等待时间。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型, 0 ~ 2147483647‬,单位为毫秒。

默认值:6s(即6000ms)

wal_receiver_connect_timeout

参数说明:设置连接主机的最大等待超时时间。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型, 0 ~ 2147483,单位为秒。

默认值:2s

wal_receiver_connect_retries

参数说明:设置连接主机的最大尝试次数。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型, 1~ 2147483647‬。

默认值:1

wal_receiver_buffer_size

参数说明:备机与从备接收Xlog存放到内存缓冲区的大小。

该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型,4096~1047552,单位为KB。

默认值:64MB(即65536KB)

primary_slotname

参数说明:设置备机对应主机的slot name,用于主备校验,与wal日志删除机制。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符型

默认值:空字符串

enable_redo_atomic_operation

参数说明:开启并行回放,回放线程更新本线程的LSN值时,使用原子操作进行更新,还是使用spinlock加锁进行更新。

该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

取值范围:布尔型

  • on表示使用原子操作进行更新。
  • off表示使用spinlock加锁进行更新。

默认值:on

max_standby_base_page_size

参数说明:开启极致RTO功能后,备机上最大允许的base page类型文件的存储空间大小。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:长整型,1048576~562949953421311,单位为KB。

默认值:268435456‬(256 GB)

max_standby_lsn_info_size

参数说明:开启极致RTO功能后,备机上最大允许的lsn info类型文件的存储空间大小。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:长整型,1048576~562949953421311,单位为KB。

默认值:268435456‬ (256 GB)

base_page_saved_interval

参数说明:开启极致RTO功能后,备机上生成base page的间隔数。对同一个页面来说,每回放该参数值的次数,生成一次base page。

该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型,5~2000。

默认值:400

standby_force_recycle_ratio

参数说明:开启极致RTO功能后,备机读相关文件的触发强制回收的比例。当base page文件总大小超过max_standby_base_page_size* standby_force_recycle_ratio,或者lsn info文件总大小超过max_standby_lsn_info_size* standby_force_recycle_ratio时,触发强制回收,会有查询被取消。当standby_force_recycle_ratio = 0时,不会启动强制回收,max_standby_base_page_size和max_standby_lsn_info_size也不会生效。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:双精度浮点类型,0.0~1.0。

默认值:0.8

standby_recycle_interval

参数说明:开启极致RTO功能后,备机读相关文件回收的时间间隔。备机读的资源回收线程,每间隔该参数值的时间,尝试清理一次备机读相关文件。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型,0~86400‬,单位是秒(s)。

默认值:10

standby_max_query_time

参数说明:开启极致RTO功能后,支持的备机上查询的最大时间,超过该时间会被取消。注:何时取消查询受回收线程的时间间隔参数standby_recycle_interval和查询取快照的时间影响,因此备机上查询的实际执行时间要大于该参数。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:整型,0~86400‬,单位是秒(s)。

默认值:600

exrto_standby_read_opt

参数说明:支持极致RTO备机读优化,默认开启。主机和备机间不同步该参数。

该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

取值范围:布尔型,on表示开启优化,off表示关闭优化。

默认值:on