问题标签 [barman]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - 找不到 rsync 命令(使用 barman 备份 Postgresql 时)
我正在尝试使用barman
计划对我的 Postgresql 数据库进行备份。我的数据库服务器和备份服务器(都运行 Cent OS 7.2.1511)的 IP 分别是 10.113.12.200 和 10.133.12.205。在研究了 Barman 的文档和 Postgresql 文档以进行归档后,我将 Postgresql 配置文件中的归档设置为
正如 Barman 文档所说,我还启用了无密码 SSH from postgres@10.113.12.200
tobarman@10.113.12.205
和反之亦然。
barman.conf
以下是我的数据库服务器部分的摘录。
我对这个错误感到非常困惑和困惑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 档案都没有被复制。有人可以阐明一下吗?我想我在这里错过了一些基本的东西。
postgresql - WAL 存档:失败(请确保设置了 WAL 运输)
我正在尝试将 Barman 配置为备份。当我这样做时,barman check replica
我不断得到:
我正在使用 Postgresql 9.6 和调酒师 2.1;我不确定问题是什么,有人可以帮忙吗?这是我的 Barman 服务器配置:
postgresql - Barman 服务器无法连接到主服务器
我已经创建并遵循了酒保文档中的说明。我有一个主要的 Postgres 和备用酒保服务器。我可以在没有密码的情况下从后台服务器 ssh 到主服务器。但是当运行任何像我这样的酒保命令时,barman check Postgresdb-server
我无法得到任何响应。同时,当我在备份服务器中看到 wal 日志时,wal 归档工作正常。甚至barman backup Postgresdb-server
没有反应。有什么我想念的吗?日志文件说不可能进行备份,但除此之外没有其他消息。我正在使用最新的酒保 2.1 和 PostgreSQL 9.6.2
更新:为外部连接打开防火墙端口 5432 后问题已解决。在这种情况下,从备份/酒保服务器打开端口 5432 到主 postgres 服务器。这有助于解决问题。
psycopg2.connect("host=pg user=barman dbname=postgres")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.7/site-packages/psycopg2/__init__.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
psycopg2.OperationalError: could not connect to server: Connection timed out
Is the server running on host "pg" and accepting
TCP/IP connections on port 5432?
authentication - SSH 公钥认证不仅对特殊用户有效
我在 CentOS 6.8 上为 SSH 服务器设置公钥认证时遇到问题。奇怪的是,当我使用 postgres 用户登录时它运行良好,但是当我使用通过安装 barman 自动创建的 'barman' 用户登录时,它总是需要密码。
'postgres' 用户的主目录和 barman 用户的主目录在同一个文件夹中。我认为这个问题与 sshd 配置无关,试图将 barman 的 home 路径、.ssh 路径和 authorized_keys 的权限设置为与 postgres 相同。但它仍然不起作用。这是我运行后得到的ssh localhost -vvv
:
postgresql-9.4 - Barman 恢复命令未将“所有”WAL 文件从 Barman 服务器复制到备用数据库服务器
不传输这些 WAL 文件的恢复命令有什么问题?
这是我的过程...
主数据库已关闭(模拟故障),但最近有一个备份,并且 WAL 文件已从 main-db 服务器传送。
在 Barman 服务器上,我们可以看到自上次
barman backup main-db
运行以来归档了 6 个 WAL 文件。
现在我将运行recover命令,使用最新的备份+WAL文件来恢复备用数据库服务器,如下:
现在关注备用数据库服务器上的 Postgresql 数据目录(/var/lib/postgresql/9.4/main)。
我们可以看到以下 WAL 文件都没有使用恢复命令传输。
- 0000000100000001000000E3
- 0000000100000001000000E4
- 0000000100000001000000E5
- 0000000100000001000000E6
- 0000000100000001000000E7
- 0000000100000001000000E8
- 0000000100000001000000E9
但是,我可以使用 barman-cli 的barman-restore-wal
命令来拉动它们。所以这告诉我他们在酒保服务器上是明确可用的。这是我用来恢复 WAL 文件的 recovery.conf 文件。
现在我们可以看到所有的 WAL 文件都是从酒保服务器中提取的。
postgresql - Postgres 9.6 从生产复制到自定义从属
我有个问题。目前我有一个 1 TB Postgres 9.6 数据库,它由 Barman 和流媒体备份。
我需要的:
从生产/主服务器到从服务器的复制:
- 可以写的,不管replica上写的数据是不是发到主服务器
- 几乎可以实时配置或几乎没有延迟
- 我可以在不锁定主数据库的情况下使用转储
如上所述,我正在使用 Barman 进行备份。但是,我无法找出如何从 Barman 构建由主同步的副本。它是由其他人设置的,我不确定它是否适合我需要的解决方案。
我的问题:
- Barman 是我想要的好工具吗?
- 如果不。你会向我推荐哪些工具?
- 如果是。你知道如何从 Barman 构建由 master 同步的副本吗?你能告诉我怎么做吗?
谢谢
postgresql - 如何判断酒保是否在白天接收 WAL 流?
我按照this和this中的指示进行操作。我还成功地从一台服务器备份并将其恢复到另一台服务器。我的酒保在专用机器上。看起来不错。但是我怎么知道它是否在白天接收到 WAL 流呢?
我可以在 [barman-server]:/var/lib/barman 中看到基本备份
barman check mydb
报告好事情
我已经创建了一个 cron 条目来运行该barman backup mydb
命令(我认为它会进行更多的基本备份)
我同意这个人的观点,即这不属于单独的 cron 作业——它属于 /etc/barman.d/.conf 文件中的某种设置,上面写着“每 X 天进行一次基本备份”或一些这样的,但这不是我在这个问题上的问题。
我如何判断这是否在当天接收 WAL 流?
- 我要寻找什么才能看到一些进展?
- 有没有办法为此查看 IP 地址或数据库连接,所以我确定?
- (我想我也需要对 WAL 流进行一点教育) WAL 流是 PG 服务器“发送”给酒保的东西吗?还是从酒保的流程中“拉”出来的?
linux - PostgreSQL + 为什么在 baarman restore 之后标记了 archive_command 行
我使用酒保工具作为 PostgreSQL 的备份和恢复
在我成功恢复了酒保 /var/lib/pgsql 下的数据文件夹之后
我们看到带有archive_command 的行被#BARMAN# 注释了,并且还添加了行-archive_command = false
如下
这意味着从这一点我们无法从备份服务器备份数据文件夹,因为标记了行
为什么酒保会在恢复过程后备注该行?
我们可以避免这种情况吗?(因为这会每晚停止备份过程)
- IP - 107.14.23.6是备份服务器
例如,当我们想从酒保那里备份时,我们会得到:
此时备份被卡住 - 要求 PostgreSQL 服务器完成备份
linux - barman + 用红色标记失败/启动的备份
使用以下 barman 命令我们可以看到备份状态,而 STARTED/FAILED 状态表示备份实例创建成功
输出:
是否有可能以某种方式在 barman 语法之后通过管道传输 tput 命令,以便用红色标记 FAILED/STARTED 行,以便用户可以将这些行识别为坏备份?
例子:
备注 - " tput setaf 1 " --> 会将字符涂成红色
windows - 在 Windows Scheduler 上使用酒保备份
我正在使用 barman 通过 WSL 使用本地 Windows 机器从远程服务器备份 postgreSQL。它运行良好,但必须每天手动完成。我正在尝试使用 Windows Scheduler 将其自动化,但到目前为止还没有成功。我尝试过的如下:
- 放入
C:\Windows\system32\bash.exe -c -l "sudo barman backup remote-server"
cmd 脚本并使用 Windows 调度程序启动。 - 将整个
C:\Windows\System32\bash.exe -c -l "sudo barman backup remote-server"
放在 Windows 调度程序本身上。 - 制作一个shell文件
sudo barman backup remote-server
并运行bash -c -l '\mnt\c\backup.sh'
我不知道该尝试什么了。