Solution 1 :
Une chose que vous pouvez vérifier est (qui vous oblige à vous connecter à la console MySQL) - vérifiez que vous disposez des autorisations nécessaires pour vous connecter à root
par localhost
.
mysql -h 127.0.0.1 -u root -p
-- Une fois que vous vous êtes connecté avec succès --
mysql> select user,host from mysql.user;
+------+--------------------------------+
| user | host |
+------+--------------------------------+
| root | 127.0.0.1 |
| root | ::1 |
| root | localhost | <-- Make sure you have a localhost entry for root
+------+--------------------------------+
3 rows in set (0.00 sec)
Il suffit de le jeter là-bas, juste au cas où c'est de cela qu'il s'agit.
Solution 2 :
La plupart des clients MySQL sont étranges dans le fait que si vous spécifiez l'hôte comme localhost
, ils l'associent à une connexion socket au lieu d'une connexion TCP. Vos options sont soit de vous en tenir à 127.0.0.1
ou, si le client le prend en charge (comme le binaire mysql CLI le fait avec le --protocol
flag), forcez-le à utiliser TCP au lieu d'un socket unix.