Ne peut pas créer de connexion de base de données pour Doctrine2 dans Symfony2 avec MAMP (Connection refused)
Je suis dans le processus d'apprentissage de Symfony2 pour un projet que moi et quelques amis, et je suis prise d'un tutoriel où vous faites un blog dans Symfony2: http://tutorial.symblog.co.uk/docs/doctrine-2-the-blog-model.html
Problème
Je n'arrive pas à obtenir Doctrine2 de travail. Je donne les instructions suivantes pour le Terminal:
php app/console doctrine:database:create
Et obtenez le message d'erreur suivant:
N'a pas pu créer la base de données pour la connexion nommée
symfony
SQLSTATE[HY000] [2002] Connexion refusée
Système d'info
J'ai un mac qui tourne Mountain lion et j'utilise MAMP.
Ce que j'ai fait
Je suis allé à la page de configuration (http://localhost/NameOfProject/web/config.php
) et se rendit à l'endroit où vous configurez votre base de données. Là j'ai mis dans le chemin, port, utilisateur, mot de passe, etc à partir de la MAMP page de démarrage.
Ce que j'ai essayé
Un blog m'est venu à travers suggéré de créer un lien symbolique vers le MAMP socket mysql avec la commande suivante:
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock mysql.sock
Ceci n'est pas de faire disparaître l'erreur pour moi.
Certains de mes fichiers dans symfony (si elles sont pertinentes)
De app/config/config.yml
:
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: '8889'
database_name: symfony
database_user: root
database_password: root
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: 0408312e2b9861c0c86dbb7488aceec4296054ec
database_path: /Applications/MAMP/tmp/mysql/mysql.sock
De app/config/parameters.yml
:
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: '8889'
database_name: symfony
database_user: root
database_password: root
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: 0408312e2b9861c0c86dbb7488aceec4296054ec
database_path: /Applications/MAMP/tmp/mysql/mysql.sock
Le tutoriel parle de la mise à jour de la database_* options dans le fichier de paramètres de la situé à app/config/parameters.ini
. Cependant, je n'ai pas de parameters.ini
fichier situé dans ce dossier! Seulement parameters.yml
.
Edit: Solution:
J'ai été en utilisant le mauvais numéro de port pour le serveur MySql. Lorsque j'ai utilisé 3306 il a travaillé.
mysql
écouter sur le port 8889? Standard mysql
port 3306...Merci beaucoup, jperovic, cela a résolu le problème!
À moins que j'ai mal compris quelque chose, jperovic, il semble que votre réponse a été donnée comme un commentaire, et donc je ne peux pas officiellement "accepter", votre réponse. Mais merci beaucoup en tout cas!! 🙂
Ah, oui, c'était juste une suggestion. Je vais écrire une réponse maintenant dans l'ordre pour vous de fermer la question 😉
OriginalL'auteur Tor | 2013-03-04
Vous devez vous connecter pour publier un commentaire.
J'ai été en utilisant le mauvais numéro de port pour le serveur MySql. Lorsque j'ai utilisé 3306, le standard de mysql port, il a travaillé.
(Merci jperovic)
Pour ceux qui ne peuvent pas résoudre ce problème, essayez d'activer
Allow network access to MySQL
dans MAMP paramètres.OriginalL'auteur Tor