Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/09/2017, à 10:36

ath732

Accès Serveur MySQL dans Virtualbox

Bonjour à tous,

J'ai un serveur MySQL tournant dans un machine virtuelle Xubuntu 16.04. Cette VM est installée sur un Windows 10.
Je souhaite accéder depuis l'hôte Windows à mon serveur SQL. J'ai déjà essayé pas mal de chose : changer le bind-adress, configurer le port forwarding de VirtualBox.. (Réseau NAT) etc, mais rien n'y fait : je n'ai pas accès depuis mon Windows à mon serveur. J'ai aussi consulté internet, mais peu de réponses probantes...
Je fais probablement mal quelque chose, ou j'oublie une étape, je suis sûr que c'est tout bête.

Quelqu'un a une idée ?

Merci d'avance

[EDIT] Lorsque je rajoute bind-adress = 10.0.2.15 dans /etc/mysql/my.cnf, le service n'arrive plus à redémarrer. Je dois remettre bind-adress=127.0.0.1 ou commenter la ligne pour que le serveur veuille bein redémarrer

Dernière modification par ath732 (Le 04/09/2017, à 10:50)

Hors ligne

#2 Le 04/09/2017, à 10:50

jplemoine

Re : Accès Serveur MySQL dans Virtualbox

De mémoire, mysql est configuré pour ne répondre que sur le localhost.
Il faut donc modifier les paramètres de mysql pour qu'il réponde sur les adresse du réseau local.
Ensuite, perso, je configure la VM en pont vers l'interface physique de ma machine principale : elle aura alors , vis à vis du réseau, le même comportement qu'une machine physique.
C'est à dire qu'elle aura un adresse dans la zone d'adressage "normal" (192.168.x.y) au lieu d'être sur un sous-réseau spécifique (en 10.x.y..z).


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#3 Le 04/09/2017, à 11:01

ath732

Re : Accès Serveur MySQL dans Virtualbox

Je note pour le pont au lieu du NAT.
Par contre, mon premier problème est que le serveur ne veut pas démarrer tant qu'il est "bind-adress=xx.xx.xx.xx". Toute autre adresse que 127.0.0.1 (ou absence de commentaire) empêche le serveur de démarrer.

Hors ligne

#4 Le 04/09/2017, à 15:16

ath732

Re : Accès Serveur MySQL dans Virtualbox

Bon, j'ai finalement réussi à effectuer le port bind, après de nombreux essais infructueux

Il faut éditer le fichier /etc/mysql/mysql.conf.d/mysqld.cnf en changeant le bind-adress dans la partie "# Instead of skip-networking the default is now to listen only on  localhost which is more compatible and is not less secure."
Il faut commenter le skip-external-locking
Puis il faut utiliser les commandes suivantes pour redémarrer le serveur :

sudo service mysql stop
sudo service mysql start

et non :

sudo /etc/init.d/mysql restart

Ensuite, il se peut que les applications d'accès n'ait pas accès à la base de données (PHPmyAdmin, MySQL Workbench, ...). Il faut se connecter à la base de données :

mysql -u root -p

et réallouer les bons droits :

GRANT ALL ON [i]DATABASE[/i].* TO 'root'@'[i]xx.xx.xx.xx[/i]' IDENTIFIED BY '[i]password[/i]'

en remplaçant les champs en italique par les bonnes données

Bon, reste maintenant à effectuer le port forwarding sous VB. smile

Hors ligne

#5 Le 04/09/2017, à 15:46

ath732

Re : Accès Serveur MySQL dans Virtualbox

J'achève de me répondre à moi-même en espérant que cela en aidera d'autres

Pour se connecter depuis windows, ajouter une redirection de port sur l'adaptateur NAT
Maintenant, si la connexion depuis windows est un échec, pensez à GRANT le user sur la passerelle.

Par exemple, j'avais ma redirection de port ainsi : 127.0.0.1:3306 -> 10.0.2.15:3306. La passerelle est 10.0.2.2
Donc il faut aussi faire sur le serveur MySQL :

GRANT ALL ON [i]DATABASE[/i].* TO 'root'@'[i]10.0.2.2[/i]' IDENTIFIED BY '[i]password[/i]'

Et , ça marche

Hors ligne

#6 Le 04/09/2017, à 18:03

jplemoine

Re : Accès Serveur MySQL dans Virtualbox

C'est pour ça que j'avais posté une solution dans mon post #2 :
au lieu de "jouer" pour passer de 192.168.x.y à 10.x;y;z. avec une  redirection via le poste Windows.
Tu mets le réseau en pont (au lieu de nat) : la machine sera, au vu du réseau, vu comme n’importe quelle machine physique.
- Au niveau de la machine hôte, tu ne fait rien.
- au niveau du système virtualisé, tu fait le même paramétrage qu'une machine physique. (notamment pour les partages Samba.. et des serveurs web, BdD,...)


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#7 Le 04/09/2017, à 18:55

ath732

Re : Accès Serveur MySQL dans Virtualbox

Effectivement, c'est plus simple.
En l'occurrence, je ne pouvais pas pour l'instant mettre l'adaptateur réseau en pont, c'est pourquoi j'avais absolument besoin de la redirection de port.

Merci tout de même pour tes conseils, cela me sera utile dans le futur

Hors ligne