如何轻松地将数据库转储到heroku的数据库中

时间:2015-03-27 18:34:13

标签: ruby database heroku command-line import

我有一个充满数据的本地数据库,我想将其推送到Heroku的数据库以便推广它。

实现这一目标的最佳方式/工具是什么?

谢谢!

2 个答案:

答案 0 :(得分:0)

您可以编写一个脚本,将当前数据库移植到种子文件中,然后使用heroku run rake db:seed

运行种子文件

答案 1 :(得分:0)

首先将本地数据库转储到转储文件:

PGPASSWORD=mypassword pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump

myusermypasswordmydb替换为您的用户名,密码和数据库名称。如果没有设置密码,请忽略PGPASSWORD=mypassword部分。

接下来,您必须将mydb.dump文件放在可公开访问的位置,然后将其上传到FTP服务器或Amazon S3存储桶(例如)。

然后在本地机器上运行:

heroku pg:backups restore 'https://s3.amazonaws.com/me/mydb.dump' HEROKU_POSTGRESQL_COLOR_URL -a appname

HEROKU_POSTGRESQL_COLOR_URL替换为您应用的数据库的网址。如果您不知道该网址,可以使用heroku config | grep HEROKU_POSTGRES找到该网址。将https://s3.amazonaws.com/me/mydb.dump替换为您上载转储文件的URL。将appname替换为Heroku中定义的应用程序名称。