You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用pg_restore恢复GitHub仓库中的dump文件?

pg_restore直接通过GitHub网页URL恢复数据不可行

你用的这种方式完全不可行,核心问题有两个:

  1. GitHub的blob链接指向的是网页页面,不是原始SQL文件内容。用<重定向输入时,实际传入pg_restore的是网页HTML代码,不是可解析的SQL语句,自然无法完成恢复。
  2. pg_restore主要用于处理pg_dump导出的自定义格式/压缩格式备份文件(比如.dump、.tar这类),如果你的文件是纯SQL文本,用psql命令才是更适配的选择。

正确处理方式

步骤1:替换为GitHub原始文件链接

把GitHub的blob链接替换为raw链接——只需将路径中的blob替换成raw即可,比如原链接:
https://github.com/someuser/somerepo/blob/somebranch/dump.sql
改成:
https://github.com/someuser/somerepo/raw/somebranch/dump.sql

步骤2:根据文件类型选择命令

  • 若为纯SQL文本文件,用psql管道执行:
curl -s https://github.com/someuser/somerepo/raw/somebranch/dump.sql | psql -d postgres
  • 若为pg_restore支持的备份格式(如自定义格式),用pg_restore管道执行:
curl -s https://github.com/someuser/somerepo/raw/somebranch/dump.dump | pg_restore -d postgres

额外注意事项

  • 确保你拥有目标数据库postgres的读写权限,且数据库处于正常运行状态。
  • 如果备份文件较大,建议先下载到本地再执行恢复,避免网络中断导致操作失败。

内容的提问来源于stack exchange,提问作者Muhammad Faisal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 18:45:21