2010-08-16 27 views
2

J'ai un problème en utilisant la commande heroku db: push pour transférer un MySQL base de données à heroku. J'ai essayé d'utiliser la même commande pour une autre application avec une base de données sqlite3 et tout s'est bien passé.Heroku db: pousser Sequel :: DatabaseConnectionError -> Mysql :: Erreur: Accès refusé pour l'utilisateur 'reg' @ 'localhost' (using mot de passe: NO)

C: \ Users \ reg \ Team-Omni> heroku db: pousser

Taps Loaded v0.3.9 base de données locale détectée Auto: mysql: //127.0.0.1/omni_dev encoding = UTF8 Avertissement: Les données de l'application 'growing-mist-42' seront écrasées et ne seront pas récupérables . Etes-vous sûr de vouloir continuer? (oui/non)? y

Impossible de se connecter à la base de données:

Sequel :: DatabaseConnectionError -> Mysql :: Erreur: Accès refusé pour l'utilisateur 'reg' @ 'localhost ' (en utilisant le mot de passe: NO)

si i supprimer le mot de passe pour le compte anonyme mysql, les changements d'erreur à

Sequel :: DatabaseConnectionError -> Mysql :: erreur: Accès refusé pour l'utilisateur '' @ 'localhost' à la base de données 'omni_dev'

--additional information--

mon fichier .gems:

rails -v 2.3.8

andre-Geokit --version 1.5.0 --source http://gems.github.com

Répondre

3

Vous êtes obtenir cette erreur car vous ne spécifiez pas le mot de passe pour la connexion à la base de données locale. Apparemment, le nom d'utilisateur est configuré comme 'reg' (peut-être dans le fichier de configuration MySQL). Cela n'a rien à voir avec la base de données Heroku PostgreSQL, c'est un problème de connexion à votre base de données MySQL locale (nommée omni_dev).

Essayez la chaîne de connexion suivante:

mysql://USERNAME:[email protected]/omni_dev?encoding=utf8 

pour les valeurs appropriées de USERNAME et MOT DE PASSE.

+0

merci! Je l'ai fonctionné maintenant :) – redge

1

J'ai aussi eu ce problème, mais je passais un mot de passe. Mon application locale a bien fonctionné, mais en utilisant heroku db:push, j'ai eu la même erreur que redge. L'ajout d'un port dans la base de données.yml a permis de résoudre le problème. Ainsi, une base de données.yml de travail a les entrées suivantes:

database: DATABASE 
username: USER 
password: PASSWORD 
adapter: mysql 
encoding: utf8 
socket: /Applications/MAMP/tmp/mysql/mysql.sock 
port: 8889