web-dev-qa-db-fra.com

Mettez à niveau hobby-dev vers hobby-basic sur Heroku

Je suis toujours enroulé autour des plans d'Heroku. Mais je sais que je vais avoir environ 3 lignes dans la base de données, donc je dois passer de hobby-dev à hobby-basic.

Cependant, je ne trouve aucune documentation ou aide sur ce niveau de mise à niveau. Seuls les documents pour passer de Hobby à Standard.

Dois-je créer un nouveau module complémentaire PG, puis effacer ma base de données hobby-dev?

16
brianrhea

Cette réponse suppose que vous utilisez Heroku CLI. Toute instance de "YOUR_APP_NAME" dans une commande doit être remplacée par le nom d'application de l'application Heroku avec laquelle vous travaillez.

1. Fournissez un nouveau hobby-basic base de données:

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

Cela produira un nom pour la nouvelle base de données contenant une couleur. Vous devrez vous y référer ultérieurement. Par exemple:

HEROKU_POSTGRESQL_PINK_URL

2. Mettez éventuellement db en mode maintenance pour vous assurer qu'aucune donnée n'est ajoutée à la db pendant sa copie.

heroku maintenance:on --app YOUR_APP_NAME

. Copiez l'existant hobby-dev db vers le hobby-basic db

heroku pg:copy DATABASE_URL HEROKU_POSTGRESQL_PINK --app YOUR_APP_NAME

Heroku va maintenant imprimer le message suivant.

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. Confirmez le transfert de la base de données en tapant le nom réel de votre application

YOUR_APP_NAME

5. Promouvez votre nouvelle base de données

heroku pg:promote HEROKU_POSTGRESQL_PINK --app YOUR_APP_NAME

Le nom basé sur les couleurs de la base de données que vous promouvez doit être copié à partir du résultat obtenu à l'étape 1. Ne copiez pas et ne collez pas la ligne au-dessus de Word pour Word, cela ne fonctionnera pas.

6. Si vous mettez votre db en mode maintenance plus tôt, désactivez-le.

heroku maintenance:off --app YOUR_APP_NAME

43
brianrhea