Maison >base de données >tutoriel mysql >Comment résoudre « L'hôte « xxx.xx.xxx.xxx » n'est pas autorisé à se connecter à ce serveur MySQL » ?

Comment résoudre « L'hôte « xxx.xx.xxx.xxx » n'est pas autorisé à se connecter à ce serveur MySQL » ?

DDD
DDDoriginal
2024-12-18 05:54:281000parcourir

How to Resolve

Erreur : connexion hôte MySQL refusée

Ce problème se produit lors de la tentative de connexion à un serveur MySQL distant avec une adresse IP d'hôte non reconnue, ce qui entraîne dans l'erreur : "L'hôte 'xxx.xx.xxx.xxx' n'est pas autorisé à se connecter à ce MySQL serveur."

Causes :

L'erreur indique que le serveur MySQL est configuré pour restreindre les connexions d'hôtes spécifiques. Il s'agit généralement d'une mesure de sécurité visant à empêcher tout accès non autorisé.

Solution :

Pour remédier à ce problème, il est nécessaire d'accorder l'accès à l'hôte qui se connecte. Voici deux approches possibles :

Option 1 : Créer un nouveau compte administratif

Créer un nouvel utilisateur avec des privilèges administratifs, en lui accordant l'accès à la fois depuis l'hôte local et l'hôte distant . Cette méthode permet un contrôle complet des autorisations et des accès des utilisateurs.

mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
    ->     WITH GRANT OPTION;
mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
    ->     WITH GRANT OPTION;

Option 2 : accorder des autorisations spécifiques

Limiter l'accès à des privilèges spécifiques et le restreindre à l'utilisateur distant. hôte uniquement. Il s'agit d'une approche plus sécurisée, fournissant uniquement les autorisations nécessaires à l'utilisateur distant.

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON database_name.* TO 'monty'@'%'

FAQ MySQL Remarque :

Selon la FAQ MySQL, si vous Si vous rencontrez cette erreur en essayant de vous connecter à partir de localhost, il est important de vérifier une règle avec Host='localhost' et User=''. S'il existe, supprimez-le, puis exécutez une commande FLUSH PRIVILEGES pour actualiser les tables d'attribution.

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!

Déclaration:
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