升级Heroku Postgres数据库计划

时间:2013-03-19 16:10:48

标签: ruby-on-rails-3 postgresql heroku

如果这是一个愚蠢的问题,我很抱歉,我是Heroku主机的新手,希望StackOverflow的一位专家可以帮助我。

我最初为我的heroku应用程序注册了一个基本的免费postgres数据库,但最近我已达到10K行限制,并希望升级到$ 9 /月计划。但是,我完全不知道该怎么做。这是一个相对简单的过程吗?我不得不提出这个问题,我感到愚蠢。

当我登录heroku并点击我的应用程序时,我会看到我的应用程序的附加组件列表。当我点击Postgres附加组件时,它会将我带到一个单独的网页,但我没有看到任何升级我的数据库计划的选项。

任何提示?

谢谢!

3 个答案:

答案 0 :(得分:17)

升级Heroku Post gres DB:

1. heroku config
        It will show current database URL
        HEROKU_POSTGRESQL_COPPER_URL: postgres://xxxddxxdx:sfsdfsfs-SIT@ec2-107-20-220-251.compute-1.amazonaws.com:5432/xdfdsxdxxxx
        HEROKU_POSTGRESQL_SILVER_URL: postgres://fasdfsad:dsfsdfdsafdsf@ec2-54-225-136-187.compute-1.amazonaws.com:5432/sdfasdfdasfds
        //Default database set
        DATABASE_URL:  postgres://fasdfsad:dsfsdfdsafdsf@ec2-54-225-136-187.compute-1.amazonaws.com:5432/dsfsdf

//从命令添加新数据库,但我将命令进入服务器资源部分并单击编辑插件并添加pgsql并将平面从Free更改为您所需的计划。

2. heroku addons:create heroku-postgresql:hobby-basic

//Prevent new database updates
3. heroku maintenance:on
//Also off worker type dyno
heroku ps:scale worker=0

将当前数据库复制到新数据库

4. heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_COPPER_URL --app prod-test
heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_COPPER_URL --app prod-test
    Note:
    DATABASE_URL = It is config veriable which point default current db
    HEROKU_POSTGRESQL_COPPER_URL = This is config variable for which db I just created
    prod-test = It is my APP name

5. Promote new database (Make new db as default db)
    heroku pg:promote HEROKU_POSTGRESQL_COPPER_URL

6. Re-enable worker dyno 
    heroku ps:scale worker=1
    heroku maintenance:off

7. remove old database
heroku addons:remove HEROKU_POSTGRESQL_SILVER_URL

答案 1 :(得分:8)

Heroku的网站上有一个文件正是这样做的:Upgrade Heroku postgres with pgbackups

简而言之,步骤如下:

  • 设置新的基本数据库
  • 防止更新(设置维护模式)
  • 抓取您的备份
  • 将备份还原到新数据库
  • 宣传您的新数据库
  • 激活您的应用

如果您决定参加生产计划,这些步骤也是一样的。

答案 2 :(得分:1)

这是一个直接的过程。他们只为here撰写了一篇文章。