45

可能重复:
如何在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.

嗯,好的,那么我应该如何完全重置我的数据库、迁移和所有内容?

4

1 回答 1

89

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 权限允许的。

于 2012-06-12T12:11:30.143 回答