我正在尝试使用barman
计划对我的 Postgresql 数据库进行备份。我的数据库服务器和备份服务器(都运行 Cent OS 7.2.1511)的 IP 分别是 10.113.12.200 和 10.133.12.205。在研究了 Barman 的文档和 Postgresql 文档以进行归档后,我将 Postgresql 配置文件中的归档设置为
archive_mode = on
wal_level = 'replica'
archive_command = 'rsync --rsync-path=/usr/bin/rsync -a %p barman@10.133.12.205:/var/lib/barman/incoming/my_database/%f'
正如 Barman 文档所说,我还启用了无密码 SSH from postgres@10.113.12.200
tobarman@10.113.12.205
和反之亦然。
barman.conf
以下是我的数据库服务器部分的摘录。
[my-database]
description = "My Database"
ssh_command = ssh postgres@10.113.12.200
conninfo = host=10.113.12.200 user=postgres
retention_policy_mode = auto
retention_policy = RECOVERY WINDOW OF 7 days
wal_retention_policy = main
我对这个错误感到非常困惑和困惑sh: rsync command not found
。现在,我在阅读了关于 rsync 的内容并在这里解决了一些关于 SO 的问题后,我知道这个错误是什么,包括这里的https://unix.stackexchange.com/questions/198756/why-is-rsync-not-found
我通过 SSH 连接到barman@10.113.12.205
frompostgres@10.113.12.200
以找出$PATH
, 执行which rsync
然后仅--rsync-path
按上述方式添加。但是还是这个问题。结果,我的 WAL 档案都没有被复制。有人可以阐明一下吗?我想我在这里错过了一些基本的东西。