[RUBY] [heroku] run rails db: la migration ne fonctionne pas

environnement

・ Rails 6.0.3.2 ・ Mysql Ver 14.14 Distrib 5.6.47 ・ Osx10.15 ・ Déployer sur heroku

introduction

Ceci est une réponse quand quelque chose ne va pas lors de la création d'une application avec Rails et de son téléchargement sur heroku. Dans l'environnement de développement, MySQL et heroku ont DB comme PostgreSQL, il est donc nécessaire de le supporter. Une erreur s'est produite au milieu du processus. J'écrirai dans l'ordre.

Prise en charge de PostgreSQL

Tout d'abord, écrivez ce qui suit dans Gemfile. Il utilise PostgreSQL dans un environnement de production. J'ai écrit en bas.

group :production do
  gem 'pg'
end

J'ai changé le Gemfile, alors n'oubliez pas de faire l'installation du bundle. Tout d'abord, c'était la première erreur ici. Si vous effectuez "bundle install" tel quel, une erreur se produit car il n'y a pas de "PostgreSQL" dans votre environnement de développement.

La correspondance consiste à exécuter la commande pour ignorer la place de groupe: fin de production dans le terminal.


$ bundle install --without production 

Mettez la description pour vous connecter à la base de données dans database.yml dans le dossier config. Je l'ai ajouté en bas.

production:
  <<: *default
  adapter: postgresql
  encoding: unicode
  pool: 5

C'est tout pour moi. L'article qui a été utile est ici! [Pour les débutants] Comment déployer de manière fiable des applications de rails à l'aide d'heroku [Édition définitive] ・ Htps: // Quiita. Ce m / Kazuki Tsumoto / Te ms / A 0 Da 7281 A 3948701c39

Déployer sur heroku

Je vais l'omettre ici cette fois. Continuez jusqu'à ce que le déploiement soit terminé.

Ici db: migrate

Je fais heroku run rails db: migrate, mais une erreur se produit! J'ai finalement rencontré cette erreur en examinant diverses choses. .. ..

La description suivante se trouve au milieu du terminal.

Caused by:
PG::ConnectionBad: could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Cause

La chose simple est que heroku n'inclut pas PostgreSQL par défaut, vous devrez donc l'ajouter! Quoi! !! !! !! Je n'y suis pas encore habitué, donc je n'ai pas remarqué cette chose simple. .. .. ..

Correspondance

Commande pour ajouter PostgreSQL dans le terminal

$ heroku addons:create heroku-postgresql

Après ça

$ heroku run rails db:migrate

Ensuite, la migration est terminée!

Je pensais que quelque chose n'allait pas et j'ai passé des heures à faire quelque chose de complètement différent, mais c'était simple! L'application fonctionne et est terminée!

référence

[Pour les débutants] Comment déployer de manière fiable des applications de rails à l'aide d'heroku [Édition définitive] ・ Htps: // Quiita. Ce m / Kazuki Tsumoto / Te ms / A 0 Da 7281 A 3948701c39

[Rails] À propos de l'erreur qui se produit lors de la tentative d'exécution de "heroku run rake db: migrate" ・ Https://qiita.com/suzuki-x/items/b878723080aea1a673ed

Recommended Posts

[heroku] run rails db: la migration ne fonctionne pas
Erreur PG :: DatatypeMismatch lors de l'exécution de heroku run rails db: migrate
rails db: échec de la migration!
[Débutant] Lorsque les rails ne fonctionnent pas
[Rails] Modifier le fichier de migration (rails db: rollback)
les rails ne fonctionnent pas du tout! Essayez parfois
Après tout, que fait [rails db: migrate]?
[Rails MySQL] Comment réinitialiser la base de données sur heroku
rails db: 〇〇 Résumé
[Ruby On Rails] Comment réinitialiser DB dans Heroku
Résumé de la commande [Rails] rails db
[Rails] Flux de déploiement Heroku