PostgreSQL 单库备份


1 前置检查

bash 复制代码
# 确认连得上
psql -U <用户名> -h <host> -p 5432 -d <库名> -c "SELECT version();"

能出结果再继续。


2 场景 1:纯 SQL 文本

备份

bash 复制代码
pg_dump -U postgres -h 127.0.0.1 -p 5432 mydb \
  > mydb_$(date +%F).sql

文件大小 ≈ 裸数据,压缩可再省 70%:

bash 复制代码
gzip mydb_2025-09-19.sql   # 得到 .gz

恢复

bash 复制代码
# 1. 建空库(如已存在可跳过)
createdb -U postgres newdb

# 2. 导入
psql -U postgres -d newdb -f mydb_2025-09-19.sql

3 场景 2:自定义格式(推荐)

  • 体积更小
  • 支持只恢复某张表 或只恢复数据

备份

bash 复制代码
pg_dump -U postgres -h 127.0.0.1 -F c -b -v \
  -f mydb.dump mydb

参数说明
-F c 自定义压缩格式
-b 含大对象
-v 显示进度

恢复整库

bash 复制代码
pg_restore -U postgres -d newdb -v mydb.dump

只恢复两张表

bash 复制代码
pg_restore -U postgres -d newdb -t users -t orders mydb.dump
相关推荐
IvorySQL8 小时前
PostgreSQL 日报|修复截断 zstd 备份检测(10 月 9 日)
数据库·postgresql
刘胡子大叔8 小时前
SQL 脚本的导入顺序
数据库·sql
代码什么用9 小时前
Spring对IoC的实现
数据库·spring
hz5678911 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC11 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
程序员Sunday11 小时前
MySQL 为什么使用 B+ 树索引?把范围查询、回表和覆盖索引连起来
数据库·mysql
半杯咖啡半行码11 小时前
Qt开发实战:数据库、MV 模式、QProcess与串口通信全攻略
数据库·qt
小米里的大麦11 小时前
16 MySQL 事务
数据库·mysql
西柚小萌新11 小时前
【LLM&&AI应用开发 八股文】--4.3.Agent智能体(下)
java·开发语言·数据库
邓工说电12 小时前
智慧断路器安全吗?数据加密、离线保护与合规认证全解读
大数据·数据库·人工智能·智能断路器·炜晔科技