首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Barman postgresql传入WALs目录

Barman postgresql传入WALs目录
EN

Stack Overflow用户
提问于 2015-12-07 14:26:44
回答 2查看 1.6K关注 0票数 0

我在Barman备份工具到postgresql数据库的传入WALs目录中遇到了问题。

在我的数据库服务器中,我在postgresql.conf中

代码语言:javascript
复制
wal_level = 'archive'
archive_mode = on
archive_command = 'rsync -a %p barman@mybarmanserverip:INCOMING_WALS_DIRECTORY/%f'

在我的酒吧服务员服务器上,当我发出命令"barman show-server myservername“时,我的incoming_wals_directory

代码语言:javascript
复制
/var/lib/barman/myservername/incoming

命令barman check myservername在所有点上返回"OK“,但是当我想在命令barman backup myservername中进行备份时,我看到前3点是正确的,但是”要求PostgreSQL服务器完成备份“的问题永远不会结束。我的错误在哪里?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-28 08:01:22

我有这个问题,这是一个问题,因为rsync。若要检查是否存在这种情况,请尝试对随机文件进行rsync:

rsync -zvh random_file user@remote_host:/tmp/test

如果输出类似于:protocol version mismatch -- is your shell clean?

然后有两个可能的原因:

    1. 在这两台服务器上,rsync版本并不相同。

    1. 当您将ssh输出到远程服务器时,rsync不喜欢它。

为了解决第一个问题,下面是我所做的工作:

  • 确保两台机器上的rsync --version是相同的:
代码语言:javascript
复制
- 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命令很好地完成了

票数 1
EN

Stack Overflow用户

发布于 2016-01-08 19:07:50

用传入的文件夹路径替换INCOMING_WALS_DIRECTORY,您可以使用以下命令找到该路径: barman显示服务器main。

代码语言:javascript
复制
archive_command = 'rsync -a %p barman@mybarmanserverip:/var/lib/barman/main/incoming/%f'

请确保使用上面的barman主命令返回的值更改INCOMING_WALS_DIRECTORY占位符。

还请确保postgres用户可以正确使用ssh到barman服务器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34135913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档