Ruby 上 Rails 如何将本地 Postgres 数据库复制到 Heroku

Ruby On Rails How to Copy local Postgres db to Heroku

我在 RubyMine 终端上试过这个:

heroku pg:push ror_development postgres://budobqbtsbzmlx:hUNYKkaMap-cExovtPJat4ajPm@ec2-54-217-208-1 58.eu-west-1.compute.amazonaws.com:5432/dbhsnsvf36h8tu

但它 return 我的错误:

Unknown database: postgres://budobqbtsbzmlx:hUNYKkaMap-cExovtPJat4ajPm@ec2-54-217-208-158.eu-west-1.compute.amazonaws. com:5432/dbhsnsvf36h8tu. Valid options are: DATABASE_URL, HEROKU_POSTGRESQL_ONYX_URL

还有这个错误:

Connecting to HEROKU_POSTGRESQL_ONYX_URL (DATABASE_URL) 'psql' is not recognized as an internal or external command, operable program or batch file.

有人可以显示在 windows 上执行此操作的详细示例吗?

错误消息指出您应该使用环境变量而不是显式名称。 The documentation 说你应该做这样的事情:
heroku pg:push mylocaldb HEROKU_POSTGRESQL_ONYX

就是说,我从未使用过这种技术,但确实成功地使用 this procedure 将我的本地数据库推送到 heroku postgresql。

这是简短的版本:

  1. 安装 pgbackups:
    heroku addons:add pgbackups

  2. 备份您的本地数据库:
    pg_dump -Fc --no-acl --no-owner -h localhost -U <user> <dbname> > local_pg.dump

  3. 将此文件上传到网络服务器(我使用 S3 或保管箱)。假设 http://www.dropbox.com/me/local_pg.dump

  4. 现在恢复到你的 heroky 数据库:
    heroku pgbackups:restore DATABASE 'http://www.dropbox.com/me/local_pg.dump'