基于pg15搭建一套高可用集群,采用中间件是patroni,现在发现删除备库数据存放路径后,主库会执行pg_basebackup命令将备库数据文件恢复出来,现在想问,如果遇到一套数据量大的库,不想在备库宕机后,pg_basebackup重新生成一个新库,请问有参数可以控制吗?
是的,可以通过在Patroni配置文件中设置create_replica_method
参数来控制备库的创建方式。默认情况下,Patroni会使用pg_basebackup
命令来创建备库,但是你可以使用其他备份工具,如pgbackrest
等。
如果你想在备库宕机后,避免重新生成一个新库,可以使用pgbackrest
来创建备库,并在create_replica_method
参数中设置为pgbackrest
. pgbackrest
可以在备库宕机后,快速恢复备库,而不需要重新生成一个新库。
具体的配置方法如下:
pgbackrest
并配置好备份和恢复的相关参数。create_replica_method
参数设置为pgbackrest
。pgbackrest
的配置文件中,设置restore-command
参数,指定备库恢复时的命令。这样,当备库宕机后,Patroni会使用pgbackrest
来快速恢复备库,而不需要重新生成一个新库。