2013-04-05 94 views
4

我正嘗試使用pgbackups將數據庫遷移到現有的應用程序中,但我遇到了問題。我已經閱讀了關於heroku的開發網站的文檔,但我仍然遇到錯誤。heroku pgbackups - 它是如何工作的?

我已經爲兩個數據庫安裝了插件,我可以成功地轉到我的源數據庫並複製/捕獲它。

$ heroku pgbackups:capture -a costrecovery --expire 

HEROKU_POSTGRESQL_ONYX_URL (DATABASE_URL) ----backup---> b007 

←[0KCapturing... doneB - 
←[0KStoring... done 

然後我切換到應用程序的目錄我想複製數據庫並遵循heroku列出的說明。問題是我不知道它是不是工作,因爲他們是一個錯誤,或者如果這是因爲我沒有正確解釋指令,這是完全可能的。首先,我將列出來自heroku開發站點的說明,然後列出我嘗試過的命令。

HEROKUS說明

$ heroku pgbackups:restore DATABASE -a target-app \ 
    `heroku pgbackups:url -a source-app` 

COMMANDS我已經試過

$ heroku pgbackups:restore DATABASE_URL -a boiling-reef-2060 \ 
> heroku pgbackups:url -a costrecovery 
! Backup not found 


$ heroku pgbackups:restore HEROKU_POSTGRESQL_GREEN_URL -a boiling-reef-2060 \ 
> 'heroku pgbackups:url -a costrecovery' 
! Backup not found 


$ heroku pgbackups:restore DATABASE -a boiling-reef-2060 \ 
> 'heroku pgbackups:url -a costrecovery' 
! Backup not found 


$ heroku pgbackups:restore DATABASE_URL -a costrecovery-copy2 \ 
> heroku pgbackups:"https://s3.amazonaws.com/hkpgbackups/[email protected]/b 
007.dump?AWSAccessKe 
> yId=AKIAJFDIRYCGYNFXR4FQ&Expires=1365184330&Signature=po0wZ982Jbx%2Fkv0bKk0iv 
P%2 
> FRWac%3D" 
! Resource not found 

有人能helpl我與正確的語法? 謝謝

回答

5

pgbackups可以從同一應用程序中的數據庫或任何pgbackups URL中恢復,如在源應用程序/數據庫中捕獲的那個。這些指令使用反引號(`)來提取並從源應用程序獲取pgbackups URL。 pgbackups:url命令將提供這樣一個URL。嘗試運行此操作,瞭解發生了什麼:

heroku pgbackups:url -a costrecovery 

(假設costrecovery是您捕獲數據的地方)。

認識到這一點,你應該能夠簡單地運行:

heroku pgbackups:restore DATABASE_URL --app boiling-reef-2060 `heroku pgbackups:url --app costrecovery 
+0

感謝的人這個工作精美,正是我所需要的! – RubyDude1012 2013-04-09 14:59:17

相關問題