将 PostgreSQL 数据库从 Heroku 迁移到 Railway

问题描述 投票:0回答:1

我正在尝试了解如何轻松地将我的 PostgreSQL 数据库从 Heroku 迁移到 Railway。我尝试过使用

heroku pg:backups:capture --app APP_NAME
heroku pg:backups:download
pg_restore
但没有成功。

我有错误

pg_restore: error: corrupt tar header found in PGDMP (expected 0, computed 19471) file position 512
postgresql heroku database-migration heroku-postgres railway.js
1个回答
2
投票

TL;博士:

heroku login
heroku run 'pg_dump $DATABASE_URL' > <filename.sql> --app <heroku-app-name>
PGPASSWORD=$PGPASSWORD psql -h $PGHOST -U $PGUSER -p $PGPORT -d $PGDATABASE -f <filename.sql>

详情:

如果运行

heroku login
后登录成功,
$DATABASE_URL
将从您的Heroku环境中读取,因此无需手动插入数据库url。

<filename.sql>
:指定您喜欢的任何文件名。稍后您将使用它来导入数据库。

<heroku-app-name>
:带有 Postgres 数据库的 Heroku(后端)应用程序的名称。

在您的铁路项目中配置一个新的 PostgreSQL 数据库,并从“变量”选项卡中获取

$PGPASSWORD
$PGHOST
$PGUSER
$PGPORT
$PGDATABASE

这就是它应该的样子

示例(使用虚拟凭据):

heroku login
heroku run 'pg_dump $DATABASE_URL' > mydatabasebackup.sql --app my-heroku-backend
PGPASSWORD=hjUasj8hasA6ahsjJaf3ash psql -h containers-us-west-15.railway.app -U postgres -p 6473 -W -F t -d railway mydatabasebackup.sql
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.