首页/数据/备份与容灾速查/PostgreSQL pg_basebackup 物理基准备份
数据库与云备份56 条

PostgreSQL pg_basebackup 物理基准备份

物理全量备份:拷贝数据目录文件并流式传输所需 WAL,产物可用于搭建流复制副本或作为时间点恢复的基线。

备份与容灾速查数据更新于 2026-10-13

pg_basebackup 是什么

pg_basebackup 用来在线获取 PostgreSQL 实例的物理备份,生成一份与数据目录结构一致的基础副本,并自动包含恢复所需的预写日志。它常用于搭建流复制副本,也常作为时间点恢复的起点:拿到基础备份后,配合归档日志即可回放到任意时刻。

基本信息

账号要求具备复制权限,且访问控制配置已放行
日志处理流式模式会自动包含备份所需的日志段
输出形式目录形式便于校验,打包形式便于分发
校验工具较新版本提供专门的校验命令检查目录格式备份
主要用途搭建复制副本、作为时间点恢复的基线

在线物理备份

在线物理备份
pg_basebackup -h 127.0.0.1 -U repl -D /backup/pg/base -P -X stream
pg_verifybackup /backup/pg/base        # 较新版本可校验目录格式备份
# 需要打包分发时可加 -Ft -z 输出压缩归档,校验前需先解包
# 产物属主应为数据库运行用户

关键点对照

关键点说明
复制权限账号需要复制权限,访问控制文件要放行
日志保留备份期间日志被回收会导致失败,可用复制槽或调大保留量
输出属主产物属主应为数据库运行用户
配置补充直接用作数据目录时还需补回配置文件
跨版本物理备份不跨大版本使用,升级需走逻辑导出

使用要点

  • 备份前确认复制权限与访问控制配置,权限问题往往报错含糊
  • 关注日志回收:备份过程中日志被快速回收会导致任务失败
  • 备份产物单独存放并记录时间,避免与已有副本混淆
  • 备份完成后校验完整性,用于时间点恢复的基线要确保可用
  • 定期用该备份搭建临时实例验证可启动性,而不是只看目录大小
备份产物属主应为数据库运行用户;直接用作数据目录时还需补充配置文件,否则实例无法按预期启动。

易错点

  • 备份过程中日志被快速回收会导致失败:需要复制槽或调大日志保留量
  • 忽略日志相关配置时备份缺少还原所需日志,无法独立启动
  • 产物属主与权限不正确,实例启动时报权限错误
  • 把物理备份跨大版本恢复,实例无法启动且排错困难

数据来源与参考

  • PostgreSQL 文档(pg_basebackup / pg_verifybackup)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌