Heroku不会重置我的数据库

时间:2012-12-20 17:56:57

标签: ruby-on-rails ruby database heroku

我一直在尝试从命令行运行 $ 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上。谢谢!

3 个答案:

答案 0 :(得分:18)

运行heroku pg:reset时应指定DATABASE。这是语法:

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

答案 1 :(得分:2)

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

heroku pg:reset DATABASE_URL --confirm app-staging

希望有所帮助

答案 2 :(得分:1)

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

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

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