2

J'utilise Amazon RDS pour la première fois et j'ai suivi les documents heroku pour obtenir mon application à l'aide de l'instance RDS. Jusqu'à présent, je l'ai créé une instance et j'ai installé l'addon en utilisant le format:Problème lors de la connexion de l'application Heroku avec l'instance Amazon RDS

$ heroku addons:add amazon_rds url=mysql://user:[email protected]/databasename 

Après avoir exécuté râteau heroku db: migrate Je suis

!!! The bundled mysql.rb driver rake aborted! no such file to load -- mysql

Je suis donc installé le petit bijou MySQL. Faire la même chose encore une fois je suis arrivé l'erreur:

Can't connect to MySQL server on 'myapp.cqslpaxxqrok.eu-west-1.rds.amazonaws.com' (110)

Je vois qu'il ya une note sur l'instance étant dans la région aux États-Unis est pour le groupe de sécurité de Heroku pour contrôler l'accès ou quelque chose. Est-ce que je ne peux pas utiliser une instance européenne?

Répondre

2

Heroku a modifié sa procédure pour permettre aux serveurs Heroku de se connecter aux instances RDS. La réponse acceptée à cette question n'est plus vraie.

You have to grant Heroku dynos access to your RDS instance. The recommended way to do this is to configure the RDS instance to only accept SSL-encrypted connections and configure the security group for your instance to permit ingress from all IPs.

Previously, Heroku published its AWS account ID and security group name as a way to grant access to an AWS RDS instance. This is no longer recommended.

Ref: https://devcenter.heroku.com/articles/amazon_rds

5

Non, vous ne pouvez pas utiliser une instance européenne. Heroku n'est disponible que dans la zone Est des Etats-Unis, et vous devez pouvoir ajouter Heroku à votre zone de sécurité pour que l'instance RDS fonctionne, ce qui suppose que vous soyez dans la même zone. Plus important encore, vous voulez être dans la même zone que Heroku pour des raisons de latence et de sécurité (sinon le trafic de votre base de données circulera sur Internet).

Questions connexes