android_student
android_student

Reputation: 1246

Upgrade Heroku Postgres DB plan

I'm sorry if this is a dumb question, I'm new to Heroku hosting and was hoping one of the experts on StackOverflow could help me.

I originally signed up for a basic free postgres DB for my heroku app, but recently I've hit the 10K row limit and would like to upgrade to the $9/month plan. However, I have absolutely no idea how to do so.Is it a relatively simple process? I feel dumb for having to ask this question.

When I log into heroku and click on my app, I see a list of add-ons for my app. When I click on the Postgres add-on, it takes me to a separate webpage but I don't see any options for upgrading my DB plan.

Any tips?

Thanks!

Upvotes: 10

Views: 5925

Answers (3)

Dhiraj
Dhiraj

Reputation: 1119

In pratical ways you can do this to upgrade your postgres database plan:

  1. heroku config

    // It will show current database URL
    HEROKU_POSTGRESQL_COPPER_URL: postgres://xxxddxxdx:[email protected]:5432/xdfdsxdxxxx
    HEROKU_POSTGRESQL_SILVER_URL: postgres://fasdfsad:[email protected]:5432/sdfasdfdasfds
    
    // Default database set
    DATABASE_URL:  postgres://fasdfsad:[email protected]:5432/dsfsdf
    
  2. Create a new database heroku addons:create heroku-postgresql:hobby-basic (but I recommend that you go in server resource section and click Edit Addon and add pgsql and change plan from Free to your required plan)

  3. Run these commands to prevent database updates: heroku maintenance:on and heroku ps:scale worker=0

  4. Copy current db to new db: 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/dynos heroku ps:scale worker=1 and heroku maintenance:off

  7. remove old database heroku addons:remove HEROKU_POSTGRESQL_SILVER_URL

Upvotes: 28

Robert H
Robert H

Reputation: 11730

There is a document on Heroku's site for doing exactly this: Upgrade Heroku postgres with pgbackups.

In short, the steps are as follows:

  • setup a new new basic database
  • Prevent updates (set maintence mode on)
  • Capture your backup
  • Restore the backup to the new database
  • promote your new database
  • make your app active

These are also the same steps to follow if you decide to go to a production plan.

Upvotes: 10

davidrac
davidrac

Reputation: 10738

It's a straight forward process. They have an article just for that here.

Upvotes: 1

Related Questions