新闻详情

新闻详情

首页 / 资讯中心 / 详情

用 pgBackRest把 PostgreSQL备份进RustFS

发布时间:2026/9/27 22:58:16来源:尧图网络
用 pgBackRest把 PostgreSQL备份进RustFS
PostgreSQL 的备份有两种老毛病要么全量 dump 落在数据库本机盘盘满了才慌要么 WAL 归档目录和主库同机器主库一挂归档也跟着没。pgBackRest 是社区里最稳的 Postgres 备份工具它原生支持把仓库放进 S3 兼容对象存储repo-type设成s3备份和 WAL 归档就直接写进对象存储的桶里。下面把接自建 S3 端点的配置和备份、恢复流程走一遍。先建备份桶和专用身份别拿管理员账号建一个只管备份桶的 IAM 用户。下面这条路径用 rc 客户端演示rcaliassetrustfs http://rustfs:9000$RUSTFS_ACCESS_KEY$RUSTFS_SECRET_KEYrc mb rustfs/pg-backup rc admin useraddrustfs pgbackrestChangeMe-Strong-Secretcatpg-policy.jsonEOF { Version: 2012-10-17, Statement: [ { Effect: Allow, Action: [s3:ListBucket, s3:GetBucketLocation], Resource: [arn:aws:s3:::pg-backup] }, { Effect: Allow, Action: [s3:GetObject, s3:PutObject, s3:DeleteObject, s3:ListMultipartUploadParts], Resource: [arn:aws:s3:::pg-backup/*] } ] } EOFrc admin policy create rustfs pg-policy pg-policy.json rc admin policy attach rustfs pg-policy pgbackrest内置的readwrite策略对所有桶开放读写不符合权限收在备份桶的意图所以用自定义策略。服务端 1.0.0 已于 2026 年 9 月 16 日 GArc 启动的服务必须显式设置RUSTFS_ACCESS_KEY/RUSTFS_SECRET_KEY默认口令已废弃。pgbackrest.conf 的 s3 仓库怎么配核心是把repo1从本地文件系统改成s3endpoint指到存储的 9000 端口uri-style用pathS3 兼容存储的稳妥写法[global] repo1-types3 repo1-s3-endpointrustfs:9000 repo1-s3-bucketpg-backup repo1-s3-regionus-east-1 repo1-s3-keypgbackrest repo1-s3-key-secretpgbackrest 的 secret repo1-s3-uri-stylepath repo1-path/pgcluster01 repo1-retention-full7 [main] pg1-path/var/lib/postgresql/16/main几个参数的官方口径repo-s3-uri-style只有host和path两种取值默认host连 bucket.endpoint 域名自建端点没有这套 DNS用path。证书校验选项现在的名字是repo1-storage-verify-tls默认y老的repo-s3-verify-tls已列入废弃名单、暂时兼容。端点是 http 时没有 TLS 这回事不用管它用 https 加自签证书时才需要设n官方注明这只该用于测试或自签场景。stanza 段就是 stanza 名本身上面配的是[main]pg1-path指数据目录别放错段。repo1-path建议给个前缀而不是桶根官方的理由是桶里可能还要放日志等其他内容。repo-retention-full不配的话只出警告不清理要么显式给值要么接受备份无限累积。region参与签名计算自定义端点下填一个两端一致的值即可us-east-1是惯例占位。PostgreSQL 侧开 WAL 归档备份要连续得让 Postgres 把 WAL 段实时推进桶里。改postgresql.confarchive_mode on archive_command pgbackrest --stanzamain archive-push %p wal_level replica%p是当前 WAL 文件路径archive-push会把它传到repo1指向的桶。改完SELECT pg_reload_conf();或重启生效。WAL 归档连续才谈得上 PITR时间点恢复。备份与恢复一条 stanza 走全pgbackrest--stanzamain stanza-create pgbackrest--stanzamain backup--typefull pgbackrest--stanzamain backup--typeincr systemctl stop postgresql pgbackrest--stanzamain restore systemctl start postgresql恢复时 pgBackRest 会把需要的全量、增量和 WAL 从桶里拉回来重组。备份落在对象存储的好处是数据库机和备份彻底解耦主库机器挂了备份还在桶里换一台机器restore就行。边界与代价WAL 归档是前提。只跑backup不配archive_command恢复点就只能到上一次备份做不到连续PITR 必须archive_modeon。网络要通。pgBackRest 在数据库机执行得能访问存储的 9000 端口跨网段挂 TLS 反向代理并保持证书校验开启。保留策略在 pgBackRest 侧。retention-full控制留几个全量过期的备份集由 pgBackRest 自己从桶里清理不用手动删对象。大库首备放低峰。首次全量要把整个数据目录读一遍、压缩、分片传到存储端点耗时按数据库体积和网络吞吐算量级和增量的只传差异块完全不是一回事同时process-max拉起的并行压缩会同时吃 CPU、磁盘 IO 和带宽。挑业务低峰跑跑的时候别顺手做 VACUUM 或重索引。桶里不是全部。官方在说明自包含导出时讲得很透仓库除了备份集和 WAL 归档还保存着压缩、加密、文件打包这类功能所必需的关键元数据只把备份文件和一部分 WAL 拷出去通常跑不起来。留在数据库机上的还有配置本身/etc/pgbackrest.conf、日志目录/var/log/pgbackrest以及开了异步归档之后的本地队列目录spool-path。真出灾难要恢复这些和桶里的数据是一套只恢复桶等于丢掉 stanza 的配置前提。断网会重试但不会自己救场。归档命令失败时 PostgreSQL 会攥着 WAL 段反复重试pg_wal里的段越堆越多严重的会把写操作顶住。官方 FAQ 把这类could not find WAL segment归到归档命令、pgBackRest 配置、网络或权限、第三方存储配置、WAL 积压这几类原因上排查时用check并把--archive-timeout调得比配置值更高看清理队列要多久写入量大的集群可以开异步归档把卡在返回给数据库这一环的窗口压短。备份本身也能续跑中断的备份会拿清单里的校验和比对本已传完的文件从断点继续。pgBackRest 接 S3 兼容存储的全部门槛就是 repo1 那几行加一个能写能删的专用身份剩下的是备份策略本身的设计。主库故障不再连带归档丢失这一条就值得把仓库从本地盘挪出来。RustFS 1.0.0 已于 2026 年 9 月 16 日 GA源码和 issue 在 github.com/rustfs/rustfspgBackRest 的配置参考在 pgbackrest.org。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

基于YOLOv8的交通标志检测识别系统:从数据集到Gradio界面全流程 2026/9/27 23:48:55

基于YOLOv8的交通标志检测识别系统:从数据集到Gradio界面全流程

简介:这份资源是基于YOLOv8的交通标志检测识别系统完整项目源码,面向高校学生、课程设计及毕业设计人群,尤其适合需要完成期末大作业或希望快速上手目标检测实战的新手。项目采用YOLOv8模型结合PySide6搭建图形界面,实现交通标志的…

阅读更多 →
车牌识别计费系统源码拆包:从入场到抬杆的闭环实现与避坑指南 2026/9/27 23:48:54

车牌识别计费系统源码拆包:从入场到抬杆的闭环实现与避坑指南

简介:这份智能停车场车牌识别计费系统源码包,面向计算机相关专业的毕业设计学生、课程设计开发者以及想入门计算机视觉与全栈开发的初学者。资源以Python为核心,串联车牌识别、计费逻辑、微信小程序与安卓端交互等模块,帮助读者理…

阅读更多 →
AlgoNote 数组排序全攻略:分类体系、评价指标与十种排序算法的源码级选型指南 2026/9/27 23:48:48

AlgoNote 数组排序全攻略:分类体系、评价指标与十种排序算法的源码级选型指南

教程文档知识库 【免费下载链接】AlgoNote ⛽️「算法通关手册」:从零开始的「算法与数据结构」学习教程,200 道「算法面试热门题目」,1000 道「LeetCode 题目解析」,持续更新中! 项目地址: https://gitcod…

阅读更多 →
PaddleSeg 模型训练技巧:损失权重、Backbone/Head 分层学习率与线性 Warmup 实战指南 2026/9/27 23:48:48

PaddleSeg 模型训练技巧:损失权重、Backbone/Head 分层学习率与线性 Warmup 实战指南

人工智能计算机视觉预训练 【免费下载链接】PaddleSeg Easy-to-use image segmentation library with awesome pre-trained model zoo, supporting wide-range of practical tasks in Semantic Segmentation, Interactive Segmentation, Panoptic Segmentation, Image Matting,…

阅读更多 →
Yao Agent 接入 Anthropic Claude 原生 API:从 connector 类型到 Provider 实现的完整方案 2026/9/27 23:48:48

Yao Agent 接入 Anthropic Claude 原生 API:从 connector 类型到 Provider 实现的完整方案

Agent 框架后端低代码RAG 【免费下载链接】yao ✨ All your agents and workspaces in one place, on every device you own. Track tasks on a board, accessible from desktop, mobile, browser, or API. Self-hosted. 项目地址: https://gitcode.com/gh_mirrors/…

阅读更多 →
注册公司需要的网站建设避坑指南:3步搞定被黑难题速查手册 2026/9/27 23:48:41

注册公司需要的网站建设避坑指南:3步搞定被黑难题速查手册

注册公司需要的网站建设避坑指南:3步搞定被黑难题速查手册 网站突然弹窗挂马,后台数据全乱,客户投诉电话打爆?别慌,这是很多刚注册完公司、刚上线官网的老大们最头疼的瞬间。我干了十年建站,见过太多企业因为初期不懂技术架构,把网站搭在“裸奔”状态…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉