Comment résoudre l’erreur « An exception occurred in the driver: SQLSTATE[HY000] [2002]
Comment résoudre l’erreur « An exception occurred in the driver: SQLSTATE[HY000] [2002] Connection refused » dans un projet Symfony 6 / Doctrine avec MySQL 8
![Comment résoudre l’erreur « An exception occurred in the driver: SQLSTATE[HY000] [2002]](/images/blog/screenshot_an exception_occurred_in_driver_SQLSTATE.webp)
Origines possibles (sans entrer dans le détail)
- Le service MySQL n’est pas démarré.
- Le fichier socket /var/run/mysqld/mysqld.sock est absent.
- Le port TCP 3306 est occupé ou bloqué par un pare‑feu.
- Le DSN DATABASE_URL dans Symfony est incorrect.
Ces causes varient selon les systèmes ; si vous avez vérifié les points ci -dessus la procédure ci‑dessous règle le problème dans la plupart des cas en réinitialisant le mot de passe root.
Arrêter MySQL et recréer le dossier du socket
sudo systemctl stop mysql sudo mkdir -p /var/run/mysqld sudo chown mysql:mysql /var/run/mysqld
Démarrer MySQL en mode secours
sudo mysqld_safe --skip-grant-tables --skip-networking --user=mysql &
-skip-grant-tables : désactive l’authentification.
-skip-networking : empêche les connexions externes le temps de l’opération.
Ouvrir une seconde console et se connecter
mysql -u root
Réinitialiser le compte root avec mot de passe vide
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ''; FLUSH PRIVILEGES;
Relancer MySQL normalement
sudo killall mysqld sudo systemctl start mysql