2016-03-18 1 views
6

J'ai une application Ruby on Rails avec une base de données mysql (en utilisant la gem mysql2). Depuis Heroku court postgres je suivais cette étape afin de le faire fonctionner:Erreur Heroku et ClearDB

$>heroku addons:create cleardb:ignite 
$>heroku config | grep CLEARDB_DATABASE_URL 
$>heroku config:set DATABASE_URL='mysql2://my-url' 

Comme décrit here.

Le problème est que je reçois cette erreur sur la dernière commande:

Setting config vars and restarting xxxxxx-xxxxx-16407... !!! 
▸ Cannot overwrite attachment values DATABASE_URL. 

Et mon application ne peut pas fonctionner:

2016-03-18T10:31:31.413121+00:00 heroku[run.1567]: State changed from up to complete 
2016-03-18T10:31:34.818303+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=xxxxx-xxxxx-16407.herokuapp.com request_id=236455b8-7a02-49f0-8e2e-a67341a81580 fwd="151.225.234.109" dyno= connect= service= status=503 bytes= 
2016-03-18T10:31:35.308136+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=xxxxx-xxxx-16407.herokuapp.com request_id=974dab02-e914-42fb-ad96-5476e30e9d17 fwd="151.225.234.109" dyno= connect= service= status=503 bytes= 
2016-03-18T10:31:35.434538+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=xxxx-xxxxx-16407.herokuapp.com request_id=22bfdfd8-9cdf-4e3d-bb13-c616591bd91f fwd="151.225.234.109" dyno= connect= service= status=503 bytes= 

J'exécute déjà paquet installer et rake db: migrate sur la machine d'heroku. Savez-vous comment je peux résoudre le problème?

Répondre

13

Grâce au support heroku, j'ai résolu le problème!

Fondamentalement, j'avais besoin de supprimer mon ancienne implémentation de base de données avant d'exécuter le nouveau. Voici ce que j'ai fait:

$ heroku addons:destroy heroku-postgresql -a NAMEOFTHEAPP 

Et recommencez la procédure d'installation de ClearDB. Tout fonctionne maintenant!

+0

ClearDB installé après le retrait est resté 'heroku-postgresql'- juste dû exécuter le' config Heroku: commande DATABASE_URL' régler à nouveau :) –

6

Vous devez supprimer l'ancien DB avant d'ajouter la nouvelle DATABASE_URL par commande suivante:

$ Heroku addons: détruire heroku-postgresql

Je vais demander au nom de l'application. Vous pouvez aussi utiliser directement

$ Heroku addons: détruire heroku-postgresql -a NAMEOFTHEAPP