温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

postgresql怎么备份数据

发布时间:2026-09-27 17:23:05 来源:亿速云 阅读:83 作者:小樊 栏目:数据库

PostgreSQL 备份数据主要有 逻辑备份 和 物理备份 两种方式,下面按常见场景给你说明。


一、逻辑备份(最常用)

1️⃣ 使用 pg_dump 备份单个数据库

pg_dump -U username -h localhost dbname > dbname.sql

常用参数:

  • -F p:纯文本 SQL(默认)
  • -F c:自定义压缩格式(推荐)
  • -C:包含建库语句
  • -s:只备份结构
  • -a:只备份数据

示例(压缩格式):

pg_dump -U postgres -F c dbname > dbname.dump

2️⃣ 使用 pg_dumpall 备份所有数据库

pg_dumpall -U postgres > all.sql

适合:

  • 备份多个数据库
  • 备份用户、角色、权限

3️⃣ 恢复数据

# 恢复 SQL 文件
psql -U postgres dbname < dbname.sql

# 恢复 dump 文件
pg_restore -U postgres -d dbname dbname.dump

二、物理备份(适合大数据、生产环境)

1️⃣ 文件系统冷备(停库)

直接复制:

/var/lib/postgresql/data

⚠️ 必须停止 PostgreSQL


2️⃣ 热备(推荐):pg_basebackup

pg_basebackup -U repluser -D /backup/pgdata -Ft -z -P

特点:

  • 不需要停库
  • 常用于主从复制、PITR

3️⃣ WAL 归档(时间点恢复 PITR)

配合:

  • archive_mode = on
  • archive_command
  • 定期 pg_basebackup

适合:

  • 金融、核心业务
  • 可恢复到任意时间点

三、自动备份建议

  • 每日 pg_dump
  • 保留 7~30 天
  • 备份文件异地存储
  • 定期测试恢复 ✅

如果你告诉我:

  • 是否是 生产环境
  • 数据量大小
  • 是否允许停机

我可以帮你设计一套 具体备份方案。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手