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

如何将.backup文件导入个人Supabase项目以恢复数据库?

导入.backup文件到Supabase个人项目的方法

Supabase底层基于PostgreSQL,你的.backup文件本质是pg_dump生成的PostgreSQL备份包,直接用PostgreSQL官方的pg_restore工具即可完成导入,具体步骤如下:

1. 获取Supabase数据库连接信息

  • 打开Supabase控制台进入你的个人项目
  • 进入Settings > Database页面,记录以下信息:
    • 主机地址(Host):格式类似db.xxxxxx.supabase.co
    • Postgres超级用户密码:若遗忘可点击"Reset Password"重置
    • 默认数据库名是postgres,端口固定为5432

2. 安装pg_restore工具

你需要PostgreSQL客户端套件中的pg_restore,根据系统选择安装方式:

  • Mac:通过Homebrew执行 brew install postgresql
  • Windows:下载PostgreSQL官方安装包,安装时勾选客户端工具组件
  • Linux(Debian/Ubuntu):执行 sudo apt-get install postgresql-client

3. 执行导入命令

打开终端/命令提示符,运行以下命令(替换尖括号内的内容):

pg_restore -h <你的Supabase主机地址> -p 5432 -U postgres -d postgres --clean --no-owner --no-privileges /path/to/your/file.backup

输入Postgres密码后开始导入,参数说明:

  • --clean:导入前清空同名表/视图(新项目为空时建议添加,避免冲突)
  • --no-owner:跳过原数据库的对象所有者配置(原项目用户在你的项目中不存在,避免报错)
  • --no-privileges:跳过原数据库的权限设置,沿用Supabase默认权限体系

4. 常见问题处理

  • 扩展缺失报错:若备份用到pgcrypto、uuid-ossp等扩展,先在你的Supabase项目Database > Extensions中启用对应扩展,再重新导入
  • 角色不存在报错:确认命令已添加--no-owner和--no-privileges参数,跳过原角色相关配置
  • 大文件导入慢/超时:添加--verbose参数查看实时进度,确保网络稳定,大文件建议使用有线网络
  • 版本兼容问题:尽量保证原备份的PostgreSQL版本与你的Supabase项目版本接近(Supabase当前主流为15/16版本),版本差异过大可能需要调整备份内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 02:48:18