本地开发

在本地恢复下载的备份

将远程数据库备份恢复到本地实例以检查和提取数据


您可以将下载的备份恢复到本地的 Supabase 实例。这在您暂停的项目已超过恢复时间限制时可能很有用。您可以下载最新的备份,然后在本地加载以检查和提取数据。

下载备份

首先,从仪表板下载您项目的备份文件,并确认其备份镜像版本(以 PG: 为前缀):

恢复备份

假设 Postgres 版本为 15.6.1.115,使用以下命令在本地启动 Postgres,其中 db_cluster.backup 是您的备份文件路径。

1
2
3
supabase initecho '15.6.1.115' > supabase/.temp/postgres-versionsupabase db start --from-backup db_cluster.backup

请注意,支持本地恢复的最早 Supabase Postgres 版本是 15.1.0.55。如果您的托管项目运行在更早版本上,恢复过程中可能会遇到错误。在提交任何支持请求前,请确保附上来自 supabase_db_* docker 容器的错误日志。

当本地数据库成功启动后,您可以使用 psql 连接以验证所有数据是否已恢复。

1
psql 'postgresql://postgres:postgres@localhost:54322/postgres'

如果您希望同时使用其他服务如 Auth、Storage 和 Studio 仪表板与恢复的数据库,请重新启动本地开发栈。

1
2
supabase stopsupabase start

通过 Supabase CLI 启动的 Postgres 数据库不适合生产环境,仅限本地开发使用。