首页/数据/备份与容灾速查/PostgreSQL pg_restore 恢复
数据库与云备份56 条

PostgreSQL pg_restore 恢复

恢复 custom / directory 格式逻辑备份:支持并行、按对象筛选与遇错策略;plain 格式直接用 psql 回放。

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

恢复示例

恢复示例
# custom:全量恢复,先清空同名对象
pg_restore -d appdb --clean --if-exists /backup/appdb.dump
# directory:可并行恢复
pg_restore -d appdb -j 4 /backup/appdb.dir
# plain 格式直接回放
psql -d appdb -f /backup/appdb.sql
目录清单pg_restore -l dump > toc.list 查看对象列表
筛选恢复-t 表 / -n schema / -L 列表文件
错误策略--exit-on-error 遇错即停(默认继续并汇总报错)
--clean 会先 DROP 再重建对象;正式库执行前确认目标,更稳妥的是恢复到新库再切换。

易错点

  • 默认遇错继续只做汇总,容易得到『部分恢复』的库:上线恢复建议加 --exit-on-error
  • 角色与权限不在单库 dump 内,目标实例需先具备对应角色

数据来源与参考

  • PostgreSQL 文档(pg_restore)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌