2026-10-22 06:54:48
openGauss 3.0.0的物理备份与恢复可通过gs_basebackup和gs_probackup工具实现,前者支持二进制热备份,后者提供全量/增量备份及灵活恢复策略。 以下为具体操作实践:
一、物理备份操作1. gs_basebackup(基础备份工具)创建备份目录:mkdir -p /data/wuli_backup
执行备份(需系统管理员账户):gs_basebackup -D /data/wuli_backup -h 127.0.0.1 -p 15400
-D:指定备份目录。
-h/-p:数据库主机地址和端口。
输出日志:显示备份起始位置(如0/403ACA0)、表空间构建及WAL流复制进度。
初始化备份目录:gs_probackup init -B /data/probackup
自动创建backups/(存放备份文件)和wal/(存放WAL日志)子目录。
添加实例:gs_probackup add-instance -B /data/probackup -D /data/openGauss/install/data/dn --instance=momo488ins
-D:数据库实例数据目录。
--instance:实例名称(唯一标识)。
配置参数(可选):gs_probackup set-config -B /data/probackup --instance=momo488ins --compress-algorithm=lz4
支持设置压缩算法、保留策略等。
创建全量备份:gs_probackup backup -B /data/probackup -b FULL --instance=momo488ins -p 15400 -d postgres
-b FULL:全量备份模式。
创建增量备份(需基于全量备份):gs_probackup backup -B /data/probackup -b PTRACK --instance=momo488ins -p 15400 -d postgres
-b PTRACK:基于页面跟踪的增量备份,仅传输变更数据。
查看备份信息:gs_probackup show -B /data/probackup
显示备份模式(FULL/PTRACK)、时间、状态(OK/RUNNING)及LSN范围。
停止数据库服务:gs_ctl stop -D /data/openGauss/install/data/dn
替换数据文件:cp -r /data/wuli_backup/* /data/openGauss/install/data/dn/
启动数据库:gs_ctl start -D /data/openGauss/install/data/dn
销毁原数据目录(仅测试环境):rm -rf /data/openGauss/install/data/dnmkdir -p /data/openGauss/install/data/dn
执行恢复(指定备份ID或自动选择最近备份):gs_probackup restore -B /data/probackup --instance=momo488ins -D /data/openGauss/install/data/dn -i RSZICJ
-i:指定备份ID(通过gs_probackup show获取)。
启动数据库:gs_ctl start -D /data/openGauss/install/data/dn
时间点恢复(PITR)(需配置WAL归档):gs_probackup restore -B /data/probackup --instance=momo488ins -D /data/openGauss/install/data/dn --time="2023-04-12 12:00:00"
--time:恢复到指定时间点(需备份包含该时间点的WAL日志)。
gs_basebackup和gs_probackup需以系统管理员(如omm)身份运行。
全量备份:每周一次,作为增量备份的基础。
增量备份:每日执行,减少存储占用和备份时间。
定期执行恢复测试,确保备份文件可用性。
启用wal_level=replica和archive_mode=on,支持时间点恢复。
将备份文件存储至远程服务器或云存储,避免单点故障。
通过掌握上述工具和流程,可独立完成openGauss数据库的物理备份与恢复,提升系统容灾能力。