La connexion à l'hôte local est activée dans MySQL.
Mais l'accès à distance (mon ordinateur portable) est désactivé
Can't connect to MySQL server on "Host" (10061)`.
Mon port est toujours ouvert 3306.
Voici mon fichier de configuration (/etc/mysql/my.cnf
):
#bind-address 0.0.0.0
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
Et le statut MySQL est:
mysql start/running, process 15204
Pour permettre l'accès à distance à MySQL, vous devez commenter bind-address (vous l'avez fait) et ignorer la mise en réseau dans le fichier de configuration.
Ensuite, vous devez vous assurer que l'utilisateur est autorisé à accéder à distance. Vérifiez votre utilisateur avec ceci:
SELECT User, Host FROM mysql.user;
Si votre utilisateur ici a '127.0.0.1' ou 'localhost' répertorié comme hôte, vous n'avez pas d'accès à distance.
Changez ceci avec:
UPDATE mysql.user SET Host='%' WHERE User='__here_your_username';
Privilèges de vidage:
FLUSH PRIVILEGES;
Le '%' est un caractère générique pour 'tous les hôtes'.
Pour autoriser l'accès à distance à MySQL installé sur Ubuntu, vous devrez accéder au fichier à cet emplacement:
/etc/mysql/mysql.conf.d/mysqld.cnf
Là, vous commentez la ligne suivante: bind-address = 127.0.0.1
essentiellement pour changer: bind-address = 127.0.0.1 en: # bind-address = 127.0.0.1
Maintenant, vous redémarrez l'ordinateur ou simplement le service mySQL à l'aide de la commande follwing: Sudo /etc/init.d/mysql restart
Dans mon cas, pile LAMP installée sur Oracle VM d'Ubuntu 18.04
Voici ma mise à jour du fichier de configuration mysql: /etc/mysql/mysql.conf.d/mysqld.cnf
Avant:
bind-address = 127.0.0.1
Après:
# bind-address = 127.0.0.1
# comment out bind-address to test remote access
Assurez-vous que votre utilisateur peut accéder à partir de l'hôte distant Sudo mysql -u root -p Entrez votre mot de passe, puis exécutez la commande
mysql> SELECT user,authentication_string,plugin,Host FROM mysql.user;
+ ------------------ + ------------------------------ ------------- + ----------------------- + ------------ - + | utilisateur | chaîne_authentification | plugin | Hôte | + ------------------ + ------------------------------ ------------- + ----------------------- + ------------ - +
| nouvel utilisateur | * 9ACA980716AE084BCA56C59D19F3CEB7BB87B139 | mysql_native_password | 192.168.x.x | | nouvel utilisateur | * 9ACA980716AE084BCA56C59D19F3CEB7BB87B139 | mysql_native_password | localhost |
Cela fonctionne pour moi, bonne chance.
Pour toute autre personne qui héberge MySQL sur un Raspberry Pi 3, le fichier que vous recherchez se trouve
etc/mysql/mariadb.conf.d/50-server.cnf
Vous devez toujours suivre les étapes précédentes comme indiqué ci-dessus, mais en commentant
bind-address = 127.0.0.1
J'espère que cela aidera quelqu'un d'autre à passer autant de temps que moi pour ce qui semblait être une ligne manquante.