J'ai monté une nouvelle machine VirtualBox avec Vagrant, et à l'intérieur de cette VM, j'ai installé Mysql Server. Comment puis-je me connecter à ce serveur en dehors de la VM? Je transfère déjà le port 3306 du Vagrantfile, mais quand j'essaye de me connecter au serveur mysql, il se remet avec l'erreur: 'reading initial communication packet'
ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0
mysql
virtualbox
vagrant
rizidoro
la source
la source
Réponses:
Assurez-vous que MySQL se lie à 0.0.0.0 et non à 127.0.0.1 ou il ne sera pas accessible de l'extérieur de la machine
Vous pouvez vous en assurer en éditant votre fichier my.conf et en recherchant l'
bind-address
élément auquel vous voulez qu'il ressemblebind-address = 0.0.0.0
. Ensuite, enregistrez ceci et redémarrez mysql:Si vous faites cela sur un serveur de production, vous voulez être conscient des implications de sécurité, discutées ici: /server/257513/how-bad-is-setting-mysqls-bind-address-to -0-0-0-0
la source
sed -i 's/symbolic-links=0/symbolic-links=0\nbind-address=0.0.0.0/g' /etc/my.cnf
bind-address
ligneHost '10.0.2.2' is not allowed to connect to this MySQL server
. Mais résolu avec serverfault.com/a/486716/147813mysql -e "create user 'root'@'10.0.2.2' identified by 'vagrant'; grant all privileges on *.* to 'root'@'10.0.2.2' with grant option; flush privileges;"
Connectez-vous à votre box avec
ssh [email protected] -p 2222
(mot de passe vagrant)Ensuite:
sudo nano /etc/mysql/my.cnf
et commentez les lignes suivantes avec #enregistrez-le et quittez
puis:
sudo service mysql restart
Ensuite, vous pouvez vous connecter via SSH à votre serveur MySQL.
la source
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' WITH GRANT OPTION;
# skip-external-locking
résolu!Je suis tombé sur ce problème récemment. J'ai utilisé PuPHPet pour générer une configuration.
Pour me connecter à MySQL via SSH, le mot de passe "vagrant" ne fonctionnait pas pour moi, à la place j'ai dû m'authentifier via le fichier de clé SSH.
Pour vous connecter à MySQL Workbench
Méthode de connexion
TCP / IP standard sur SSH
SSH
MySQL
Testez la connexion.
la source
Pour tous ceux qui essaient de le faire en utilisant mysql workbench ou sequel pro, voici les entrées:
source: https://coderwall.com/p/yzwqvg
la source
vagrant ssh-config
commande.Eh bien, comme aucune des réponses données ne m'a aidé, j'ai dû chercher davantage et trouver une solution dans cet article.
Et la réponse en un mot est la suivante:
Connexion à MySQL à l'aide de MySQL Workbench
En utilisant une approche donnée, j'ai pu me connecter à la base de données mysql dans vagrant à partir de la machine hôte Ubuntu en utilisant MySQL Workbench et également en utilisant Valentina Studio.
la source
$HOME/project/.vagrant/machines/default/virtualbox/private_key
dans Ubuntu 14.04vagrant ssh-config
commande.Voici les étapes qui ont fonctionné pour moi après la connexion à la boîte:
Localisez le fichier de configuration MySQL:
Sur Ubuntu 16, le chemin est généralement
/etc/mysql/mysql.conf.d/mysqld.cnf
Modifiez le fichier de configuration pour l'adresse de liaison:
S'il existe, modifiez la valeur comme suit. S'il n'existe pas, ajoutez-le n'importe où dans la section [mysqld].
Enregistrez vos modifications dans le fichier de configuration et redémarrez le service MySQL.
Créer / accorder l'accès à l'utilisateur de la base de données:
Connectez-vous à la base de données MySQL en tant qu'utilisateur root et exécutez les commandes SQL suivantes:
la source
Cela a fonctionné pour moi: connectez - vous à MySQL dans Vagrant
la source