Je parviens à me connecter à MySQL à partir d'une invite DOS, mais lorsque j'essaie de me connecter à partir de cygwin, tout se bloque.
$/cygdrive/c/Program\ Files/MySQL/MySQL\ Server\ 5.1/bin/mysql -u root -p
Qu'est-ce qui ne va pas?
Je parviens à me connecter à MySQL à partir d'une invite DOS, mais lorsque j'essaie de me connecter à partir de cygwin, tout se bloque.
$/cygdrive/c/Program\ Files/MySQL/MySQL\ Server\ 5.1/bin/mysql -u root -p
Qu'est-ce qui ne va pas?
Je viens de tomber sur ce, et quand j'ai lu quelqu'un mentionne une commande windows/DOS que vous exécutez dans cygwin, j'ai fait un which mysql
et qui m'a donné:
$ which mysql
/cygdrive/c/Program Files/MySQL/MySQL Server 5.5/bin/mysql
Alors, j'ai couru le cygwin Setup.exe
recherché "mysql" et installé la dernière "mysql-client". Maintenant, which mysql
ressemble:
$ which mysql
/usr/bin/mysql
Et la commande MySQL fonctionne dans cygwin :)
Si c'est une vieille question, il serait agréable d'avoir la réponse exacte ici, car les gens (comme moi) pourrait encore tomber sur elle.
Si vos tentatives pour exécuter le client MySQL à partir de Cygwin renvoie l'erreur suivante:
$ mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysql.sock' (2)
Ensuite, vous pouvez résoudre le problème en ajoutant de l'explicite -h 127.0.0.1
options de la ligne de commande, comme dans:
$ mysql -u root -p -h 127.0.0.1
En supposant que vous avez un natif de Windows version de MySQL, il y a une émulation de terminal incompatibilité entre DOS
(invite de commande windows et bash
. L'invite pour l' mysql
ne s'affiche pas.
Pour confirmer cela, tapez une commande et de retour, il sera probablement de travail, mais de la rapidité et de l'echo de la commande (ce que vous tapez) est de se perdre.
Il y a peut être une solution de contournement dans l' CYGWIN
sytem propriétés ou en bash
, mais je n'ai jamais pris le temps de travail de celui-ci.
D'autres réponses manque la suite de la clé de détail:
Cygwin est dotée de deux coquilles:
c:\cygwin\bin\mintty.exe
c:\cygwin\Cygwin.bat
(qui lance c:\cygwin\bin\bash.exe
)Win32 MySQL peut écrire correctement le n ° 2, mais pas #1, parce que Win32 MySQL ne peut sonde stdin correctement (merci @PeterNore)
Vous voulez savoir si vous êtes en utilisant Win32 MySQL? Utiliser which
, par exemple
$ which mysql
/cygdrive/c/Program Files/MySQL/MySQL Server 5.1/bin/mysql
Bonus: Cygwin guide pour surmonter les problèmes de chemins (merci @Dustin)
Exécuter bash à partir du cmd.exe fichier exécutable et puis mysql va travailler à l'intérieur de bash.
Cela va lancer bash sous windows cmd.exe l'environnement et lorsque vous essayez d'exécuter mysql il va exécuter ce que vous pouvez attendre. Ce travail est sous windows 7, mais n'a pas été testé dans une autre version.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.