内容提要
Barman是一个用于管理PostgreSQL数据库备份和恢复过程的生产级工具。它不仅处理物理备份,还提供自动管理保留策略、压缩、接近零的恢复点目标(RPO)和在恢复窗口内的任意时间点(PITR)恢复的能力。Barman的流式归档功能通过使用pg_recievewal实用程序实现了零RPO的关键组件。pg_recievewal实用程序通过与PostgreSQL建立复制连接,实时将预写日志(WAL)文件备份到指定的Barman服务器。在某些情况下,配置Barman需要设置一个标准的与PostgreSQL的连接,用于管理、协调和监控,以及一个用于备份和WAL流式传输的流复制连接。这种配置在Barman的术语中被称为仅流式设置,备份和归档操作不需要SSH连接。
关键要点
-
Barman是一个用于管理PostgreSQL数据库备份和恢复的生产级工具。
-
Barman处理物理备份,自动管理保留策略、压缩和接近零的恢复点目标(RPO)。
-
Barman的流式归档功能通过pg_recievewal实现零RPO,实时备份WAL文件。
-
配置Barman需要设置标准连接和流复制连接,称为仅流式设置。
-
pg_recievewal通过复制连接实时流式传输WAL数据,避免数据丢失。
-
pg_recievewal使用异步流复制连接,可能会丢失已提交的事务。
-
同步复制可以与pg_recievewal一起使用,但会降低系统吞吐量。
-
Barman的配置包括创建备份用户和编辑PostgreSQL配置文件。
-
Barman使用两个类型的配置文件:全局配置和服务器配置。
-
Barman支持备份保留策略,用户可以根据备份冗余或恢复窗口定义策略。
-
Barman创建备份目录,备份文件按服务器唯一名称组织。
-
使用barman命令可以检查配置、列出备份和恢复数据。
-
恢复过程需要确保Barman和PostgreSQL服务器的硬件架构相同,版本匹配。
-
barman-cli工具用于恢复操作,包括全恢复和时间点恢复。
-
在故障转移情况下,更新Barman配置以指向新服务器。
-
定期备份和测试备份数据是保护数据的重要措施。