BetaThis is a live doc! Anyone with edit access can make updates in real time without having to publish.
Edited Mar 17
By Bryan
  • In progress
  • 概述

    Barman 有两种使用模式

    • 直接在数据库中运行(作为 pg 的 archive_command 使用)

    • 在专有的机器上运行(通过 logical replication 从 pg 同步 wal 使用)

    准备

    barman 的原理是通过备份 pg 产生的 wal 文件实现的,而默认情况下 pg 仅在 wal 达到指定大小(wal_segment_size,默认为 16MB)才会执行 switch-wal

    因此,在低写入频率的数据库下,建议修改数据库 postgresql.conf 中的 archive_timeout 配置(默认为 0 代表不会自动切分 wal)为需要的时间,例如 300 代表 5 分钟

    直接在数据库中运行

    当 barman 和 pg 可以运行在一台机器/一个容器中时,建议使用这一模式

    在专有的机器上运行

    目前该方案暂不支持 PG 17 https://github.com/EnterpriseDB/barman/issues/1041

    当 barman 运行在一台单独的机器上时,可以使用这一模式(在该模式下,一台 barman 机器可以管理多台数据库机器)