21 votes

Accès au serveur MySQL via VirtualBox

J'essaie de faire en sorte que le serveur MySQL (qui se trouve dans la VM) réponde au client (qui se trouve sur la machine hôte). Toutes les méthodes retournent la même chose :

Host '10.0.2.2' is not allowed to connect to this MySQL server

J'ai veillé à ce que les ports soient correctement redirigés. J'ai également veillé à ce que dans my.cnf J'ai les lignes suivantes :

skip-external-locking
bind-address = 0.0.0.0

Cela n'a pas fonctionné pour moi. J'ai également essayé de jouer un peu comme suit :

bind-address = 10.0.2.2

Mais cela n'a pas fonctionné non plus pour moi - le serveur n'a pas pu démarrer.

Des idées, où je me trompe ?

UPDATE. Je n'ai pas vérifié les privilèges pour root@% comme dans Comment modifier les privilèges d'un utilisateur MySQL déjà créé ?

SOLVED.

38voto

Shane Madden Points 112034

Le compte root est uniquement localhost dans la grande majorité des installations par défaut, êtes-vous certain que vous l'avez autorisé à se connecter depuis l'autre système ? À partir du compte Manuel de référence MySQL :

cela signifie qu'il n'y a pas de ligne dans la table des utilisateurs avec une valeur Host qui corresponde à l'hôte du client.

Il n'y a donc pas de % o 10.0.2.2 dans le Host colonne du tout. Vérifiez votre configuration actuelle :

select user,host from mysql.user where user='root';

Il est probable que vous souhaitiez créer une nouvelle entrée racine avec le même mot de passe que celui que vous avez actuellement.

create user 'root'@'10.0.2.2' identified by 'yourpassword';
grant all privileges on *.* to 'root'@'10.0.2.2' with grant option;
flush privileges;

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X