我在Barman备份工具到postgresql数据库的传入WALs目录中遇到了问题。
在我的数据库服务器中,我在postgresql.conf中
wal_level = 'archive'
archive_mode = on
archive_command = 'rsync -a %p barman@mybarmanserverip:INCOMING_WALS_DIRECTORY/%f'在我的酒吧服务员服务器上,当我发出命令"barman show-server myservername“时,我的incoming_wals_directory是
/var/lib/barman/myservername/incoming命令barman check myservername在所有点上返回"OK“,但是当我想在命令barman backup myservername中进行备份时,我看到前3点是正确的,但是”要求PostgreSQL服务器完成备份“的问题永远不会结束。我的错误在哪里?
发布于 2017-09-28 08:01:22
我有这个问题,这是一个问题,因为rsync。若要检查是否存在这种情况,请尝试对随机文件进行rsync:
rsync -zvh random_file user@remote_host:/tmp/test
如果输出类似于:protocol version mismatch -- is your shell clean?
然后有两个可能的原因:
为了解决第一个问题,下面是我所做的工作:
rsync --version是相同的:- on your local env run `rsync --version`
- from your local (to the remote) run `ssh login@remote_host "rsync --version"`
(如果它们不匹配,请安装正确的版本。)
要解决第二个问题,您必须在.bashrc文件中添加一些内容,以防止非交互式会话上ssh连接后的文本输出(即“最后一次登录:清华九月.”--这会使rsync失败)
我把它放在我的.bashrc文件的顶部:case $- in *i*) ;; *) return;; esac
然后rsync工作得很好,并且初始的barman backup命令很好地完成了
发布于 2016-01-08 19:07:50
用传入的文件夹路径替换INCOMING_WALS_DIRECTORY,您可以使用以下命令找到该路径: barman显示服务器main。
archive_command = 'rsync -a %p barman@mybarmanserverip:/var/lib/barman/main/incoming/%f'请确保使用上面的barman主命令返回的值更改INCOMING_WALS_DIRECTORY占位符。
还请确保postgres用户可以正确使用ssh到barman服务器。
https://stackoverflow.com/questions/34135913
复制相似问题