从 Neon 迁移到 Supabase
迁移您现有的 Neon 数据库到 Supabase。
本指南演示了如何将您的 Neon 数据库迁移到 Supabase,以便充分利用 Postgres 的优势,同时获得构建项目所需的所有功能。
检索您的 Neon 数据库凭据 #
- 登录到您的 Neon 控制台 https://console.neon.tech/login。
- 在左侧选择 项目。
- 在列表中单击您的项目。
- 在您的项目仪表板中找到您的 连接字符串,然后单击 复制片段 以将其复制到剪贴板(不要选中“连接池”)。
示例
1postgresql://neondb_owner:xxxxxxxxxxxxxxx-random-word-yyyyyyyy.us-west-2.aws.neon.tech/neondb?sslmode=require设置您的 OLD_DB_URL 环境变量#
使用剪贴板中的 Neon 数据库凭据在命令行中设置 OLD_DB_URL 环境变量。
示例
1export OLD_DB_URL="postgresql://neondb_owner:xxxxxxxxxxxxxxx-random-word-yyyyyyyy.us-west-2.aws.neon.tech/neondb?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 计算附加组件。这将确保您拥有足够的资源来有效地处理迁移。
-
我们强烈建议您预配置迁移所需的磁盘空间。在付费项目中,您可以通过导航到 计算和磁盘设置 页面来执行此操作。有关磁盘扩展和磁盘限制的更多信息,请查看我们的 磁盘设置 文档。
企业版#
联系我们,如果您需要更多帮助来迁移您的项目。