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

PostgreSQL跨版本迁移单表失败:pg_restore报relation不存在错误

PostgreSQL跨版本单表迁移问题解决

排查与解决步骤

1. 验证备份文件内容

先确认备份文件中是否包含目标表的结构定义,执行:

pg_restore -l test_eu3.sql

如果输出列表里没有public.test_eu3的创建语句,说明导出时未包含表结构,需要重新导出。

2. 重新导出单表(若备份遗漏结构)

使用明确的schema+表名重新导出,确保包含完整的表结构和数据:

pg_dump -Fc -U postgres -t public.test_eu3 -f C:\Users\...\Desktop\test_eu3.dump rulings

注:将输出后缀改为.dump是自定义格式的常规命名,便于区分文本格式备份。

3. 修正导入命令

导入时指定完整的表名,确保目标库能识别:

pg_restore -v -U app_admin -d pre_rulings -t public.test_eu3 test_eu3.dump

如果目标库中已存在同名表,可添加--clean参数先清理旧表:

pg_restore -v --clean -U app_admin -d pre_rulings -t public.test_eu3 test_eu3.dump

4. 额外排查点

  • 登录源数据库执行\dt test_eu3,确认表所在的schema是否为public,若不是,导出和导入时替换为实际schema名称
  • 确保目标库pre_rulings中app_admin用户拥有public schema的创建权限,若没有,执行:
    GRANT CREATE ON SCHEMA public TO app_admin;
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 05:50:34