2012-06-12 51 views
39

Possible Duplicate:
How to empty DB in heroku如何使用db:drop和rake db:在Heroku上創建?

我在Heroku上有一個Postgres數據庫。它是免費的測試版之一。在本地測試時,我經常運行rake db:drop & & rake db:create & & rake db:migrate作爲重置數據庫的一種方式。

然而,當我嘗試在Heroku上運行此,我得到的錯誤:

Couldn't drop mydatabaseid : #<PG::Error: FATAL: permission denied for database "postgres" 
    DETAIL: User does not have CONNECT privilege. 

呃,好吧,我怎麼完全恢復我的數據庫,遷移和一切?

回答

80

pg:reset命令將爲您重新創建數據庫。用法示例:

$ heroku config | grep POSTGRESQL 
HEROKU_POSTGRESQL_RED_URL: postgres://somedatabaseurl 
$ heroku pg:reset HEROKU_POSTGRESQL_RED_URL 
! WARNING: Destructive Action 
! This command will affect the app: myappname 
! To proceed, type "myappname" or re-run this command with --confirm 
> myappname 
Resetting HEROKU_POSTGRESQL_RED_URL (DATABASE_URL)... done 

db:reset命令會嘗試刪除數據庫,這是不是一件Heroku的權限允許。

+0

好極了!...你在哪找到的?我在這裏閱讀他們的文檔:https://devcenter.heroku.com/articles/heroku-postgresql – Geoff

+4

在我的大腦某處 - 不知道在哪裏。 –

+3

這裏是Heroku文檔:https://devcenter.heroku.com/articles/rake – weston

相關問題