AnyBackup-AnyBackup 7.0 PostgreSQL 数据库恢复失败,且执行输出中存在如下错误信息:恢复失败,原因:恢复路径非空。
简介:AnyBackup - AnyBackup 7.0 PostgreSQL 数据恢复失败,且执行输出中存在如下错误信息:恢复失败,原因:恢复路径非空。需要开启覆盖现有数据库选项或者恢复至一个非空目录。
关键字
PostgreSQL 、恢复路径非空
适用产品
- AnyBackup CDM 7.0.x
- AnyBackup Express 7.0.x
- AnyBackup Enterprise 7.0.x
问题描述
在 AnyBackup 7.0 管理控制台上,执行 PostgreSQL 数据库恢复失败,且执行输出中存在如下错误信息:
恢复失败,原因:恢复路径非空。
问题影响
在 AnyBackup 7.0 管理控制台上执行 PostgreSQL 数据库恢复任务失败。
问题原因
PostgreSQL 数据库恢复任务未开启覆盖现有数据库选项或者没有恢复至空目录。
解决方案
为了解决该问题,需要新建恢复任务开启覆盖现有数据库选项,或恢复至一个空目录。请按照以下步骤执行:
方案一、恢复至非空目录下,开启覆盖现有数据库选项。
新建 PostgreSQL 数据库恢复任务,在恢复选项处开启覆盖现有数据库。
警告:若恢复目标端机器上存在未运行的同名实例,开启此选项会覆盖此同名实例。
方案二、恢复至空目录。
1. 通过 SSH 工具登录到恢复目标端机器,查看 PostgreSQL 数据库安装用户及用户组,执行命令如下:
ps -ef|grep postgres
id postgres
注意:下图示例中查得数据库安装用户为 postgres ,具体以实际信息为准。
2. 新建恢复目录,并修改该目录的属主属组为 PostgreSQL 数据库安装用户及用户组,执行命令如下:
mkdir PostgreSQL_data
chown postgres:postgres PostgreSQL_data
注意:下图示例中新建恢复目录为 PostgreSQL_data,该目录必须为空,且数据库用户有读写权限。
3. 新建恢复任务不用开启覆盖现有数据库选项,恢复路径选择方案二步骤2中新建的目录。
4. 点击下一步,直至恢复任务创建完成。
更多信息
关于更多备份恢复 PostgreSQL 相关操作操作,请参考《AnyBackup Family 7.0 PostgreSQL 定时备份恢复用户指南》。