2011-10-14 59 views
2

我有一组初始生产数据存储在本地开发数据库中,我想迁移到生产以获取数据的起点。传输这些数据的最佳方式是什么?将初始PostgreSQL数据库从开发转移到Heroku生产

按照说明书使用pgbackups的方法似乎并不明显。也许我必须在本地运行某种手动备份,然后用pgbackups来推动它,如果是这样的话,我会很感激有关完成此操作的一些具体说明。

回答

6

后一些额外的挖掘和Heroku的一个答案,对于初始数据输入的答案是:

1)如果使用本地PGSQL ,首先,转储数据:

pg_dump -U your_username your_database_name -f backup.sql

2)然后按照这里找到适合进口的说明到Heroku的数据库: http://devcenter.heroku.com/articles/pgbackups#importing_from_a_backup

+0

对。我试过但它告诉我我必须等一天。 :)不知道为什么PPL一直投我的问题。大声笑感谢您的意见。 – ylluminate

+0

感谢您的帮助。对我来说似乎很陌生,因为我认为这很清楚:“我有一套最初的生产数据存储在开发数据库的本地数据库中,我想迁移到生产中作为数据的起点。”我不知道它是如何更清楚。好吧! :) – ylluminate

3

首先使用pg_dump转储本地数据库:

pg_dump -Fc --no-acl --no-owner -h ... mydb > mydb.dump 

然后用heroku pgbackups:restore

heroku pgbackups:restore heroku-database-url url-to-your-mydb.dump-file 

注意,mydb.dump文件需要由Heroku的服务器访问。

Heroku的开发中心页面有详细的说明:

https://devcenter.heroku.com/articles/heroku-postgres-import-export

+0

了解,但我认为这是从我读的一些“危险”。 – ylluminate

+0

此外,您是否熟悉在远程Heroku pgsql服务器和本地服务器之间设置同步复制? – ylluminate

+0

@ylluminate:'db:push'可能会很危险,如果你已经有生产数据但是你没有,所以没有什么可以覆盖或丢失。我不熟悉Heroku的复制。 –

相关问题