web-dev-qa-db-ja.com

Herokuでhobby-devをhobby-basicにアップグレードする

Herokuの計画に頭を抱えています。しかし、私はdbに約3Mの行があることを知っているので、hobby-devからhobby-basicにアップグレードする必要があります。

ただし、このレベルのアップグレードに関するドキュメントやヘルプは見つかりません。ホビーからスタンダードに移行するためのドキュメントのみ。

新しいPGアドオンを作成して、趣味の開発データベースを一掃する必要がありますか?

16
brianrhea

この回答は、Heroku CLIを使用していることを前提としています。コマンド内の「YOUR_APP_NAME」のインスタンスは、使用しているHerokuアプリのアプリケーション名に置き換える必要があります。

1。新しいhobby-basicデータベースをプロビジョニングします:

heroku addons:create heroku-postgresql:hobby-basic -a YOUR_APP_NAME

これは、色を含む新しいデータベースの名前を出力します。これは後で参照する必要があります。例えば:

HEROKU_POSTGRESQL_PINK_URL

2。オプションで、dbをメンテナンスモードにして、コピー中にデータがdbに追加されないようにします。

heroku maintenance:on --app YOUR_APP_NAME

。既存のhobby-dev dbをhobby-basic dbにコピーします

heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_PINK --app YOUR_APP_NAME

Herokuは次のメッセージを出力します。

heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_PINK --app YOUR_APP_NAME

!    WARNING: Destructive Action
!    Transfering data from DATABASE_URL to HEROKU_POSTGRESQL_PINK
!    This command will affect the app: YOUR_APP_NAME
!    To proceed, type "YOUR_APP_NAME" or re-run this command with --confirm YOUR_APP_NAME

YOUR_APP_NAME

4。アプリケーションの実際の名前を入力して、データベース転送を確認します

YOUR_APP_NAME

5。新しいデータベースを宣伝します

heroku pg:promote HEROKU_POSTGRESQL_PINK --app YOUR_APP_NAME

プロモートするデータベースのカラーベースの名前は、手順1で取得した出力からコピーする必要があります。Wordfor Wordの上に行をコピーして貼り付けないでください。機能しません。

6。dbを以前にメンテナンスモードにした場合は、オフにします。

heroku maintenance:off --app YOUR_APP_NAME

43
brianrhea