2011-10-14 58 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的複製。 –

相關問題