Maison > base de données > tutoriel mysql > le corps du texte

MySQL n'autorise pas l'accès à distance

怪我咯
Libérer: 2017-07-05 11:14:13
original
1397 Les gens l'ont consulté

MySQL Il existe de nombreuses raisons pour lesquelles l'accès à distance n'est pas autorisé. En plus des méthodes suivantes, vous devez également vérifier les paramètres de Sécurité du serveur pour interdire l'accès au port 3306. de la machine.

Solution :
1. Changez la méthode du tableau.
Il se peut que votre compte ne permette pas la connexion à distance, uniquement localhost. À ce stade, connectez-vous simplement à MySQL sur l'ordinateur sur localhost et modifiez l'élément "host" dans la table "user" de la base de données "mysql" de "localhost" à "%"

code Comme suit :

mysql -u root -pvmwaremysql>use mysql; 
mysql>update user set host = '%' where user = 'root'; 
mysql>select host, user from user;
Copier après la connexion

2. Loi d'autorisation.
Par exemple, si vous souhaitez que mon utilisateur se connecte au serveur MySQL depuis n'importe quel hôte en utilisant mon mot de passe.
ACCORDEZ TOUS LES PRIVILÈGES SUR *.* À 'monutilisateur'@'%' IDENTIFIÉ PAR 'monmot de passe' AVEC OPTION D'ACCORD
FLUSH PRIVILÈGES
Si vous souhaitez autoriser l'utilisateur monutilisateur de ; ip Connectez-vous au serveur MySQL pour l'hôte 192.168.1.6 et utilisez mon mot de passe comme mot de passe
ACCORDEZ TOUS LES PRIVILÈGES SUR *.* À 'monutilisateur'@'192.168.1.3' IDENTIFIÉ PAR 'mon mot de passe' AVEC OPTION D'ACCORD
FLUSH PRIVILEGES ;
Si vous souhaitez autoriser l'utilisateur myuser à se connecter à la base de données dk du serveur mysql à partir de l'hôte avec l'adresse IP 192.168.1.6 et à utiliser mon mot de passe comme mot de passe
ACCORDEZ TOUS LES PRIVILÈGES SUR dk.* À 'myuser'@'192.168. 1.3 ' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES
La première méthode que j'ai utilisée, j'ai trouvé qu'elle ne fonctionnait pas au début, j'ai vérifié sur Internet et exécuté une instruction de moins mysql>FLUSH RIVILEGES. pour rendre la modification efficace. C'est tout
Une autre méthode, mais je ne l'ai pas essayée personnellement, je l'ai trouvée sur csdn.net, vous pouvez y jeter un oeil
Exécuter sur la machine où se trouve mysql. installé : 1. d:mysqlbin>mysql -h localhost -u root //Cela devrait pouvoir entrer dans le serveur MySQL
2 mysql>ACCORDER TOUS LES PRIVILÈGES SUR *.* À 'root'@'%. 'AVEC GRANT OPTION //Accorder à tout hôte l'autorisation d'accéder aux données
3. mysql>FLUSH PRIVILEGES //Les modifications prennent effet
4 mysql>EXIT //
QuitterServeur MySQLCeci. De cette façon, vous pouvez utiliser
AutresConnectez-vous en tant que root sur n'importe quel hôte !

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal