Analyse des raisons :
L'hôte « Local » n'est pas autorisé à se connecter à ce serveur MySQL Problème typique d'autorisations à distance.
Le nœud du problème :
MySQL n'autorise pas les autorisations de connexion à distance. Cela dépend du type de système utilisé par votre serveur, qu'il s'agisse de Linux ou de Windows. La solution est différente. Vous pouvez effectuer une recherche en ligne et il existe de nombreuses informations sur la résolution du problème.
Solution:
Il y a deux étapes principales pour ouvrir un compte de connexion à distance MySQL :
1. Assurez-vous que le pare-feu du serveur ne bloque pas le port 3306.
Le port par défaut de MySQL est 3306. Vous devez vous assurer que le pare-feu ne bloque pas le port 3306, sinon vous ne pourrez pas vous connecter à MySQL à distance via le port 3306.
Si vous avez spécifié un autre port lors de l'installation de MySQL, veuillez ouvrir le numéro de port que vous avez spécifié pour MySQL dans le pare-feu.
Si vous ne savez pas comment configurer le pare-feu sur votre serveur, veuillez demander à l'administrateur de votre serveur.
2. Ajoutez la possibilité d'autoriser la connexion à distance aux utilisateurs MySQL et de les autoriser.
1) Connectez-vous d’abord à MySQL avec le compte root
Cliquez sur le menu Démarrer de l'hôte Windows, exécutez, entrez "cmd", entrez dans la console, entrez dans le répertoire bin MySQL et entrez la commande suivante.
Entrez la commande suivante à l'invite de commande sur l'hôte Linux.
Copiez le code comme suit :
> MySQL -uroot -p123456
123456 est le mot de passe de l'utilisateur root.
2) Créez un utilisateur de connexion à distance et autorisez-le
Copiez le code comme suit :
> accorder tous les PRIVILÈGES sur discuz.* à ted@'123.123.123.123' identifié par '123456' ;
La déclaration ci-dessus indique que toutes les autorisations de la base de données discuz sont accordées à l'utilisateur ted, que l'utilisateur ted est autorisé à se connecter à distance à l'adresse IP 123.123.123.123 et que le mot de passe de l'utilisateur ted est défini sur 123456.
Analysons tous les paramètres un par un :
all PRIVILEGES signifie accorder toutes les autorisations à l'utilisateur spécifié. Il peut également être remplacé par l'octroi d'une autorisation spécifique, telle que : sélectionner, insérer, mettre à jour, supprimer, créer, supprimer, etc. Les autorisations spécifiques sont séparées par "," demi- virgules de largeur.
discuz.* indique à quelle table les autorisations ci-dessus sont destinées. discuz fait référence à la base de données, et le * suivant indique pour toutes les tables. On peut en déduire que l'autorisation pour toutes les tables de toutes les bases de données est "*.*", et pour toutes. tables dans toutes les bases de données, l'autorisation est "*.*". L'autorisation pour toutes les tables d'une certaine base de données est "nom de la base de données.*", et l'autorisation pour une certaine table dans une certaine base de données est "nom de la base de données.nom de la table". .
ted indique quel utilisateur vous souhaitez autoriser. Cet utilisateur peut être un utilisateur existant ou un utilisateur inexistant.
123.123.123.123 indique l'adresse IP qui autorise les connexions à distance. Si vous ne souhaitez pas restreindre l'adresse IP de la connexion, définissez-la simplement sur "%".
123456 est le mot de passe de l'utilisateur.
Après avoir exécuté l'instruction ci-dessus, exécutez l'instruction suivante pour prendre effet immédiatement.
Copiez le code comme suit :
>privilèges de chasse ;