J'ai installé le serveur MySQL sur une machine Ubuntu distante. Le serveur root
est défini dans le mysql.user
de cette manière :
mysql> SELECT host, user, password FROM user WHERE user = 'root';
+------------------+------+-------------------------------------------+
| host | user | password |
+------------------+------+-------------------------------------------+
| localhost | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| ip-10-48-110-188 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| 127.0.0.1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| ::1 | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
+------------------+------+-------------------------------------------+
Je peux y accéder avec l'utilisateur root
à partir de l'interface de ligne de commande de la même machine distante, en utilisant l'option standard mysql
client. Je veux maintenant permettre l'accès à la racine à partir de chaque hôte sur l'internet J'ai donc essayé d'ajouter la ligne suivante (il s'agit d'une copie exacte de la première ligne du dump précédent, à l'exception de l'élément host
colonne) :
mysql> SELECT host, user, password FROM user WHERE host = '%';
+------------------+------+-------------------------------------------+
| host | user | password |
+------------------+------+-------------------------------------------+
| % | root | *xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
+------------------+------+-------------------------------------------+
Mais mon client sur mon PC personnel continue à me le dire (j'ai masqué l'IP du serveur) :
Erreur SQL (2003) : Impossible de se connecter au serveur MySQL sur '46.x.x.x' (10061)
Je ne peux pas dire s'il s'agit d'une erreur d'authentification ou d'une erreur de réseau. Sur le pare-feu du serveur, j'ai activé le port 3306/TCP para 0.0.0.0/0 et cela ne me dérange pas...