その中で、Dev、Basic($9/月)の両プランは、Starterカテゴリ(tier)になっていて、
Crane($50/月)〜Mechaは、Productionカテゴリ(tier)となっています。
これらのプランの中から、開発中はDevを使用しパフォーマンステストの為に、
大量のデータを投入する必要があるから、Basicへアップグレード、
本番環境を構築するから、Craneなどへアップグレードなど、アップグレードの必要が生じることがあるとおもいます。
今回は、herokuのPostgresのプランアップグレードと、データ移行する方法を書いてみます。
(今回は例としてDevからBasic(Starter同士)へのアップグレードを行います。)
準備
1 PG Backupsアドオンの追加
管理コンソールで追加するか、コマンドだと
で、PG Backupsを追加しておく。$ heroku addons:add pgbackups
2 追加したPG Backupsを使用し、現在のデータのバックアップを取得する。
手順$ heroku pgbackups:capture
1 アップグレードするアドオンを追加する。
アドオンを追加すると、以下のようなメッセージが表示されるので、この中の$ heroku addons:add heroku-postgresql:basic
HEROKU_POSTGRESQL_PINKの部分を控えておく
2 PG Backupsで取得したバックアップを、新しいDBへリストアする。Adding heroku-postgresql:basic on sushi... done, v122 ($9/mo) Attached as HEROKU_POSTGRESQL_PINK_URL Database has been created and is available Use `heroku addons:docs heroku-postgresql:basic` to view documentation.
この時、本当にいいの?と聞かれるので、hoge.herokuapp.comのhogeの部分を入力する$ heroku pgbackups:restore HEROKU_POSTGRESQL_PINK
3 旧DBから新DBへアプリの向き先を変更する
4 向き先変更の確認をする。$ heroku pg:promote HEROKU_POSTGRESQL_PINK
上のコマンドを打つと、Dev,Basic両方のDB情報が表示されるが、新しいDB(この場合だとHEROKU_POSTGRESQL_PINK)に、"DATABASE_URL"の表示があればOK$ heroku pg:info
5 旧DBを削除
$ heroku addons:remove HEROKU_POSTGRESQL_ORANGE
以上、でアップグレードとデータ移行は完了です。
※heroku document url
0 件のコメント:
コメントを投稿