在CentOS上管理PostgreSQL备份文件可从备份策略、存储、清理及工具使用等方面入手,具体如下:
制定备份策略
pg_dump(逻辑备份,导出SQL脚本)或pg_basebackup(物理备份,复制文件系统级数据)。pg_basebackup结合WAL日志生成,减少存储空间占用。archive_mode并配置archive_command,保留WAL文件以支持时间点恢复(PITR)。备份文件存储
/var/lib/pgsql/backups/)、网络存储或云存储,确保权限隔离。自动化与清理
crontab设置定期执行备份脚本,例如每日全量备份。find命令按时间删除旧备份(如保留最近7天),或通过脚本自动管理。# 示例:删除7天前的备份文件
find /path/to/backup -type f -name "*.sql" -mtime +7 -exec rm -f {} \;
监控与验证
pg_restore测试恢复流程。关键命令参考:
pg_dump -U 用户名 -F c -b -v -f /path/backup.sql 数据库名。postgresql.conf,设置archive_mode=on及archive_command。pg_archivecleanup /path/to/archive 000000010000000100000001.backup。