4

我一直在尝试从命令行运行$ heroku pg:reset但我相信我没有正确放入数据库。我尝试了许多变体。

我跑了$ heroku config | grep POSTGRESQL获取打印为的数据库名称

HEROKU_POSTGRESQL_PINK_URL: postgres://naknaswvxfvuup:QK2dHYNMZ_va10lDgMDo4S0BIM@ec2-23-21-161-255.compute-1.amazonaws.com:5432/db7eute4gu4mcb

我试过从

#1

$ heroku pg:reset HEROKU_POSTGRESQL_PINK_URL: postgres://naknaswvxfvuup:QK2dHYNMZ_va10lDgMDo4S0BIM@ec2-23-21-161-255.compute-1.amazonaws.com:5432/db7eute4gu4mcb

#2

$ heroku pg reset postgres://naknaswvxfvuup:QK2dHYNMZ_va10lDgMDo4S0BIM@ec2-23-21-161-255.compute-1.amazonaws.com:5432/db7eute4gu4mcb

#3

$ heroku pg:reset db7eute4gu4mcb

和其他变体。请让我知道如何正确注意这一点,因为我不断从命令行收到错误或此文本“! Unknown database: db7eute4gu4mcb. Valid options are: DATABASE_URL, HEROKU_POSTGRESQL_PINK_URL"

我目前在 Ruby on Rails 教程上的 10.4。谢谢!

4

3 回答 3

18

您应该在运行时指定一个 DATABASE heroku pg:reset。这是语法:

heroku pg:reset <DATABASE>

要知道 的值,您可以运行:

heroku pg:info

它将返回 DATABASE_URL,类似于:HEROKU_POSTGRESQL_GRAY_URL
然后您可以重置数据库:

heroku pg:reset HEROKU_POSTGRESQL_GRAY_URL

在您的情况下,要重置数据库运行:

heroku pg:reset HEROKU_POSTGRESQL_PINK_URL
于 2012-12-20T18:44:37.113 回答
2

这就是它对我的工作方式(用你的应用程序名称替换 app-staging,不要替换 DATABASE_URL,这就是 heroku 现在找到应用程序数据库的方式)

heroku pg:reset DATABASE_URL --confirm app-staging

希望能帮助到你

于 2013-09-19T21:39:46.727 回答
1

假设您已将身份验证信息导出到 shell 环境,您只需传递数据库的名称就可以了。例如:

PGPASSWORD='foobarbaz'
export PGPASSWORD
heroku pg:reset pink

当然还有其他方法可以使用重置命令,但恕我直言,这是最简单的。

于 2012-12-20T18:00:41.203 回答