リモートで働くプログラマーの検索結果

リモ太がググったことの覚書

herokuでデータベースのプランをアップグレードする

heroku公式のPostgreSQL用add-oneは無料プランでは10,000行までしかデータが保存できないためその制限を超えた場合は上位プランのadd-oneを追加してデータベースをコピーして切り替える必要がある

まずは上位プランのadd-oneを追加

f:id:remoter:20200131094455p:plain

最初は無料のHeroku Postgresが1つしかないのでここに1つ上のプランであるHobby Basicのadd-oneを追加します

f:id:remoter:20200131094547p:plain

これでherokuアプリに2つのHeroku Postgresがある状態になります

f:id:remoter:20200131094633p:plain

この状態ではまだ空っぽのデータベースが追加されただけです

次にもともとのデータベースから新しく追加したデータベースにデータをコピーします

heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_NAVY_URL -a sample-app

最後にアプリが参照するデータベースを新しく追加したデータベースに切り替えます

heroku pg:promote HEROKU_POSTGRESQL_NAVY -a sample-app

これで新しく追加したデータベースにデータを移行して切り替わりました

f:id:remoter:20200131095001p:plain

実際に作業する場合は、データベースをコピーする前に

heroku maintenance:on -a sample-app

でメンテナンスモードにしてデータベースにアクセスがない状態にしてコピー、切り替えを行い作業が終わったら

heroku maintenance:off -a sample-app

メンテナンスモードを解除すべきかなと思います