从 Vercel Postgres 迁移到 Supabase
迁移您现有的 Vercel Postgres 数据库到 Supabase。
本指南演示了如何将您的 Vercel Postgres 数据库迁移到 Supabase,以便充分利用 Postgres 的优势,同时获得构建项目所需的所有功能。
检索您的 Vercel Postgres 数据库凭据 #
- 登录到您的 Vercel 控制面板 https://vercel.com/login。
- 点击 存储 选项卡。
- 点击您的 Postgres 数据库。
- 在 快速入门 部分,选择 psql,然后点击 显示密钥 以显示您的数据库密码。
- 将
psql后的字符串复制到剪贴板。
示例
1psql "postgres://default:xxxxxxxxxxxx@yy-yyyyy-yyyyyy-yyyyyyy.us-west-2.aws.neon.tech:5432/verceldb?sslmode=require"将这部分复制到您的剪贴板
1"postgres://default:xxxxxxxxxxxx@yy-yyyyy-yyyyyy-yyyyyyy.us-west-2.aws.neon.tech:5432/verceldb?sslmode=require"设置您的 OLD_DB_URL 环境变量#
使用您的 Vercel Postgres 数据库凭据在命令行设置 OLD_DB_URL 环境变量。
示例
1export OLD_DB_URL="postgres://default:xxxxxxxxxxxx@yy-yyyyy-yyyyyy-yyyyyyy.us-west-2.aws.neon.tech:5432/verceldb?sslmode=require"检索您的 Supabase 连接字符串 #
-
在您的项目仪表板上,点击 连接
-
在会话池中,点击您的连接字符串右侧的 复制 按钮将其复制到剪贴板。
设置您的 NEW_DB_URL 环境变量#
使用您的 Supabase 连接字符串在命令行设置 NEW_DB_URL 环境变量。您需要将 [YOUR-PASSWORD] 替换为您的实际数据库密码。
示例
1export NEW_DB_URL="postgresql://postgres.xxxxxxxxxxxxxxxxxxxx:[YOUR-PASSWORD]@aws-0-us-west-1.pooler.supabase.com:5432/postgres"迁移数据库#
您需要 pg_dump 和 psql 命令行工具,这些工具包含在一个完整的 Postgres 安装 中。
-
在控制台中导出您的数据库到文件
使用您的 Postgres 凭据运行
pg_dump,将您的数据库导出到文件(例如,dump.sql)。
1pg_dump "$OLD_DB_URL" \2 --clean \3 --if-exists \4 --quote-all-identifiers \5 --no-owner \6 --no-privileges \7 > dump.sql-
将数据库导入到您的 Supabase 项目
使用
psql将 Postgres 数据库文件导入到您的 Supabase 项目。1psql -d "$NEW_DB_URL" -f dump.sql
其他选项
- 要仅迁移单个数据库模式,请将
--schema=PATTERN参数添加到您的pg_dump命令。 - 要排除一个模式:
--exclude-schema=PATTERN。 - 要仅迁移单个表:
--table=PATTERN。 - 要排除一个表:
--exclude-table=PATTERN。
运行 pg_dump --help 以获取完整的选项列表。
-
如果您计划迁移大于 6 GB 的数据库,我们建议 升级到至少 Large 计算附加组件。这将确保您拥有足够的资源来有效地处理迁移。
-
我们强烈建议您预配置迁移所需的磁盘空间。在付费项目中,您可以通过导航到 计算和磁盘设置 页面来执行此操作。有关磁盘扩展和磁盘限制的更多信息,请查看我们的 磁盘设置 文档。
企业版#
联系我们,如果您需要更多帮助来迁移您的项目。