Heroku的。 db:当我的app包含两个数据库时推送

时间:2013-03-06 12:07:45

标签: heroku

我在Heroku上托管了Rails 3.2应用程序。我的应用程序包含两个数据库(一个用于我的模型,第二个是一种带有静态数据的字典)。

我需要将第二个数据库(字典)推送到Heroku,但是当我尝试db:push Heroku认为我将推送第一个数据库(使用Rails模型)。

问题是 - 如何指定我想将本地数据库dictionary.sqlite推送到heroku dictionary.pg?

2 个答案:

答案 0 :(得分:1)

你可以使用Heroku pg:transfer插件,它可以让你通过它的URL设置目标目的地。

https://github.com/ddollar/heroku-pg-transfer

或者,在本地使用psql客户端,但恢复到heroku pg isntance。

答案 1 :(得分:1)

不要使用db:push/pull;这些方法已被弃用。使用pgbackups:capture/restore来做这样的事情。它接受HEROKU_POSTGRESQL_COLOR作为命令的一部分:

$ heroku pgbackups:restore HEROKU_POSTGRESQL_COLOR 'https://example.com/data.dump' --app app-name

有关详细说明,请参阅Importing and Exporting Heroku Postgres Databases with PG Backups

此外,heroku-pg-transfer已合并到pg-extras,请在此处查看:https://github.com/heroku/heroku-pg-extras