AnyBackup-PostgreSQL 数据库定时备份失败,提示错误信息:备份失败,原因:归档模式未打开
关键字
PostgreSQL、归档模式
适用产品
- AnyBackup Express 7.0.x
- AnyBackup CDM 7.0.x
- AnyBackup Enterprise 7.0.x
问题描述
在 AnyBackup 管理控制台上,执行 PostgreSQL 数据库定时备份失败,且执行输出中存在如下错误信息:
备份失败,原因:归档模式未打开。

问题影响
AnyBackup 无法备份 PostgreSQL 数据库。
问题原因
PostgreSQL 数据库未开启归档模式。
解决方案
为了解决该问题,需要给 PostgreSQL 数据库开启归档模式,请按照以下步骤执行:
警告:以下操作步骤需要重启数据库服务,请提前做好业务停机准备!
1. 通过 SSH 工具连接到 PostgreSQL 数据库所在的服务器,执行以下命令,登录数据库并确认数据库是否开启归档模式。
su - postgres
psql -h 127.0.0.1 -U postgres
show archive_mode;
注意:下图示例中,off 表示数据库未开启归档模式。

2. 执行以下命令,查看并编辑 postgresql.conf 配置文件,开启归档功能 。
ps -ef | grep post
cd /var/lib/pgsql/data
vi postgresql.conf
注意:下图示例中路径为测试环境对应路径,具体路径以实际环境为准。

3. 在 postgresql.conf 配置文件中修改如下参数。
wal_level = archive
archive_mode = on
archive_command = 'cp %p /var/lib/pgsql/archive/%f'
注意:其中 /var/lib/pgsql/archive/ 表示要存放归档日志( WAL 日志)的路径,该路径必须存在,且数据库用户有读写权限。


4. 执行以下命令,重启数据库服务。
pg_ctl restart

更多信息
AnyBackup 支持的备份方式为热备份方式,对于数据库而言,例如 Oracle、PostgreSQL,均需在归档模式下进行热备份。