从 Heroku 迁移到 Supabase
将您的 Heroku Postgres 数据库迁移到 Supabase。
Supabase 是 Heroku Postgres 的最佳免费替代方案之一。本指南介绍了如何将您的 Heroku Postgres 数据库迁移到 Supabase。此迁移需要 pg_dump 和 psql CLI 工具,这些工具作为完整的 Postgres 安装包的一部分自动安装。
或者,使用 Heroku 到 Supabase 迁移工具,只需点击几下即可迁移。
快速演示#
检索您的 Heroku 数据库凭据 #
- 登录到您的 Heroku 帐户并选择您要迁移的项目。
- 在菜单中点击 资源,然后选择您的 Heroku Postgres 数据库。
- 在菜单中点击 设置。
- 点击 查看凭据 并保存以下信息
- 主机 (
$HEROKU_HOST) - 数据库 (
$HEROKU_DATABASE) - 用户 (
$HEROKU_USER) - 密码 (
$HEROKU_PASSWORD)
- 主机 (
检索您的 Supabase 连接字符串 #
- 如果您是 Supabase 的新手,创建一个项目。
- 通过点击项目仪表板中的 连接,获取您项目的会话池连接字符串。
- 将连接字符串中的 [YOUR-PASSWORD] 替换为您的数据库密码。如果您没有密码,可以在 数据库设置页面 重置数据库密码。
将您的 Heroku 数据库导出到文件 #
使用您的 Heroku 凭据和 pg_dump 将您的 Heroku 数据库导出到文件 (例如,heroku_dump.sql)。
1pg_dump --clean --if-exists --quote-all-identifiers \2 -h $HEROKU_HOST -U $HEROKU_USER -d $HEROKU_DATABASE \3 --no-owner --no-privileges > heroku_dump.sql将数据库导入到您的 Supabase 项目 #
使用 psql 将 Heroku 数据库文件导入到您的 Supabase 项目。
1psql -d "$YOUR_CONNECTION_STRING" -f heroku_dump.sql其他选项#
- 要仅迁移单个数据库模式,请将
--schema=PATTERN参数添加到您的pg_dump命令。 - 要排除一个模式:
--exclude-schema=PATTERN。 - 要仅迁移单个表:
--table=PATTERN。 - 要排除一个表:
--exclude-table=PATTERN。
运行 pg_dump --help 以获取完整的选项列表。
-
如果您计划迁移大于 6 GB 的数据库,我们建议 升级到至少 Large 计算附加组件。这将确保您拥有足够的资源来有效地处理迁移。
-
我们强烈建议您预配置迁移所需的磁盘空间。在付费项目中,您可以通过导航到 计算和磁盘设置 页面来执行此操作。有关磁盘扩展和磁盘限制的更多信息,请查看我们的 磁盘设置 文档。
企业版#
联系我们,如果您需要更多帮助来迁移您的项目。