Maison > base de données > tutoriel mysql > Pourquoi ne puis-je pas me connecter à mon serveur MySQL à partir d'un hôte distant malgré « bind-address = 0.0.0.0 » ?

Pourquoi ne puis-je pas me connecter à mon serveur MySQL à partir d'un hôte distant malgré « bind-address = 0.0.0.0 » ?

Patricia Arquette
Libérer: 2024-12-17 08:06:25
original
752 Les gens l'ont consulté

Why Can't I Connect to My MySQL Server from a Remote Host Despite `bind-address = 0.0.0.0`?

Erreur de connexion MySQL : HOST '' Impossible de se connecter au serveur MySQL

Lorsque vous essayez de vous connecter à MySQL à l'aide de la commande mysql Lorsque vous essayez de vous connecter au serveur, vous recevez le message d'erreur suivant :

ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
Copier après la connexion

Cette erreur indique que le serveur a été configuré pour autoriser uniquement certains hôtes à se connecter et que votre hôte n'est pas dans la liste autorisée. .

Vérifiez les autorisations de l'utilisateur root

Dans votre cas, vous avez défini l'adresse de liaison sur 0.0.0.0 dans my.cnf, ce qui signifie que le serveur doit accepter les connexions de tous les hôtes. Cependant, vous ne parvenez toujours pas à vous connecter. Cela peut être dû au fait que l'utilisateur root est uniquement autorisé à se connecter à partir de localhost.

Pour vérifier cela, exécutez la requête suivante :

SELECT host FROM mysql.user WHERE User = 'root';
Copier après la connexion

Si les résultats ne contiennent pas le nom d'hôte ou l'adresse IP à partir de laquelle vous essayez de vous connecter, vous devrez accorder l'autorisation au utilisateur root de cet hôte Autorisation de se connecter.

Accorder l'autorisation de se connecter

Pour accorder à l'utilisateur root l'autorisation de se connecter à partir d'un hôte spécifique, utilisez la commande suivante :

CREATE USER 'root'@'host_ip' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'host_ip';
Copier après la connexion

où host_ip est l'adresse IP de l'hôte auquel vous souhaitez autoriser les connexions.

Si vous souhaitez accorder des autorisations de connexion à tous les hôtes, vous pouvez utiliser le caractère générique % :

CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
Copier après la connexion

Enfin, actualisez les autorisations pour qu'elles prennent effet immédiatement :

FLUSH PRIVILEGES;
Copier après la connexion

Maintenant, vous devriez pouvoir utiliser la commande mysql pour vous connecter au serveur MySQL à partir d'un hôte distant spécifié.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal