Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Sous système windows][ubuntu] Erreur Mysql

ERROR 2002 (HY000): Can't connect to local MySQL server through socket

26 août 2017 à 8:00:31

Bonjour à tous! 

J'ai effectué une upgrade de mes packages dernièrement, et depuis j'ai une erreur mysql à chaque opération d'installation, de désinstallation que j'essaie de faire avec apt.

Je tiens à préciser que cet environnement ubuntu est un sous système windows.

voici l'erreur en question:

(Reading database ... 28905 files and directories currently installed.)
Preparing to unpack .../phpmyadmin_4%3a4.5.4.1-2ubuntu2_all.deb ...
Unpacking phpmyadmin (4:4.5.4.1-2ubuntu2) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up mysql-server-5.7 (5.7.19-0ubuntu0.16.04.1) ...
invoke-rc.d: could not determine current runlevel
 * Stopping MySQL database server mysqld                                                                         [ OK ]
invoke-rc.d: could not determine current runlevel
invoke-rc.d: could not determine current runlevel
 * Stopping MySQL database server mysqld                                                                         [ OK ]
invoke-rc.d: could not determine current runlevel
mysql_upgrade: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) whi
le connecting to the MySQL server
Upgrade process encountered error and will not continue.
mysql_upgrade failed with exit status 11
dpkg: error processing package mysql-server-5.7 (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up phpmyadmin (4:4.5.4.1-2ubuntu2) ...
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf

Creating config file /etc/dbconfig-common/phpmyadmin.conf with new version

Creating config file /etc/phpmyadmin/config-db.php with new version
dbconfig-common: flushing administrative password
Errors were encountered while processing:
 mysql-server-5.7
E: Sub-process /usr/bin/dpkg returned an error code (1)
W: Operation was interrupted before it could finish

Dans les solutions possibles à cette erreur, j'ai lu dans différents forums les solutions suivantes:

  • mysql-server n'est pas démarré (ce qui n'est pas le cas, j'ai effectué les tests en redémarrant mysql-server, tout se passe correctement au démarrage, mais la même erreur persiste)
  • mysql-server n'est pas installé (ce qui n'est pas mon cas)
  • une autre solution consiste à lancer cette commande avant de redémarrer mysql: sudo systemctl enable mysql (mais elle ne fonctionne pas non plus pour moi)
  • L'erreur fait egalement référence au fichier /var/run/mysqld/mysqld.sock. Ce fichier n'existe pas. J'ai lu que mysql-server devait le créer au démarrage, ce qu'il ne fait pas visiblement. 
  • J'ai également voulu repasser à mysql-server 5.6 qui n'a visiblement pas ce soucis, mais impossible de faire fonctionner apt pour désinstaller ou installer quoi que ce soit. 
  • je me suis également interessé à une autre erreur "invoke-rc.d: could not determine current runlevel" qui semble être courrante sous les sous systèmes windows. Je ne sais pas si c'est lié, mais la encore, aucune des solutions trouvées n'a réglé le soucis. 

J'avoue que ce soucis dépasse mes connaissances de linux actuelles. Quelqu'un aurait une idée de ce qui arrive et comment le régler?

Merci d'avance pour vos réponses. 

-
Edité par simcos 26 août 2017 à 9:08:35

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.
29 août 2017 à 10:42:25

As-tu essayé de faire un backup de tes BDD, remove myslq-server, upgrade et installer mysql a nouveau ? Je pense que ça sera la solution la plus simple.
  • Partager sur Facebook
  • Partager sur Twitter
29 août 2017 à 14:10:24

Merci pour ta réponse. 

Mon soucis c'est que toute ces commandes (apt update¦remove¦install¦purge¦upgrade) ne fonctionnent pas justement à cause de cette erreur. 

La sortie bash qui illustre l'erreur dans mon premier post est justement une tentative de "apt install phpmyadmin".

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.
30 août 2017 à 9:27:26

J utilise xampp avec mariadb.
  • Partager sur Facebook
  • Partager sur Twitter
Les petites choses ont leur importance ; c'est toujours par elles qu'on se perd. Auteur: Fedor Dostoïevski
30 août 2017 à 9:47:15

Déjà, je te conseille de faire un backup de tes BDD.

Ensuite essaye de faire :

apt-get clean && apt-get remove mysql-server*

  • Partager sur Facebook
  • Partager sur Twitter
30 août 2017 à 16:01:34

Malheureusement, encore une erreur. Je crois que c'est "clean" qu'il me laisse pas faire.

simon@DESKTOP:/$ sudo apt clean && apt remove mysql-server*
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?


Il me semble que ce Ubuntu en sous système windows n'est pas très permissif. ce n'est pas la première fois que je me retrouve face à une interdiction du genre. J'avais eu aussi une interdiction pure et simple en tentant de faire un lien entre 2 dossiers. 

Je tiens à préciser que malgré tout, mysql fonctionne. J'ai pu créer une base de donnée, etc. 

-
Edité par simcos 30 août 2017 à 16:11:09

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.
30 août 2017 à 18:27:56

Au vu de ce que tu as, j'ai juste l'impression que tu n'a pas les droits, peut-être n'es-tu pas autorisé dans le fichier des sudoers.

Essaye de passer en root et de recommencer.

( sudo -i )

  • Partager sur Facebook
  • Partager sur Twitter
31 août 2017 à 0:11:00

ça fonctionne pour desinstaller mysql-server. J'ai installé mariadb-server dans la foulée, le package s'installe bien. Mais au lancement de mysql-secure-installation, après avoir entré un mot de passe: 

root@DESKTOP-8VQHPD4:/# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")

On revient au point de départ...

J'ai testé avec postgresql également, et j'ai aussi une erreur. 

root@DESKTOP-8VQHPD4:/etc/php/7.1/apache2# psql
psql: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Il semble y avoir un problème avec les sockets plus généralement. 



-
Edité par simcos 31 août 2017 à 1:48:11

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.
31 août 2017 à 9:17:29

Tu as donc désinstallé, et réinstallé après, pour vouloir lancer le mysql_secure_installation, et ça ne fonctionne toujours pas... Il n'y a pas eu d'erreur lors de la réinstallation ?

Il se peut peut-être que la solution la plus simple soit de réinstaller complètement la VM. Peut-être est-elle broken depuis son installation, ça m'est déjà arrivé une ou deux fois.

  • Partager sur Facebook
  • Partager sur Twitter
31 août 2017 à 13:43:51

Il n'y a eu aucune erreur durant l'installation. 

Ce n'est pas exactement une VM. bash sous windows

J'ai déjà tenté une désinstallation et réinstallation du système ubuntu, mais windows semble garder les fichiers de cette installation, et ne fait que la "désactiver". Après réinstallation, tout mes packages étaient encore la, et mysql continuait de me poser problème. La solution suivante, c'est formater complètement mon PC, mais je dois dire que je préférais éviter :euh:.

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.
6 septembre 2017 à 9:39:10

Essaies pour voire d installer xampp pour windows et teste a partir de linux l accès . effectivement MySQL et mariadb ont besoins des ressources administrateur dans windows et étant donné que les ressources administrateurs sous linux ne sont pas interprétés de la même façon ceci induit que MySQL ne pourra pas accéder aux ressources dont elle a besoin. De ce faite je te conseille d utiliser xamp pour windows bien que cela n existe qu en 32 bit. En similitude a cygwin.

-
Edité par gmormorromrom 6 septembre 2017 à 9:42:26

  • Partager sur Facebook
  • Partager sur Twitter
Les petites choses ont leur importance ; c'est toujours par elles qu'on se perd. Auteur: Fedor Dostoïevski
9 septembre 2017 à 17:26:58

Merci pour ta réponse. 

Effectivement, pour le moment ce bash pour windows ne semble pas encore être au point. C'est le risque avec les builds insiders fast ring. 

Je vais utiliser xampp pour windows pour le moment et putty pour le ssh. Si je trouve une solution au problème entre temps je posterai la solution. 

Merci pour votre aide! 

Edit: 

Le soucis a été réglé par les mises à jour.

-
Edité par simcos 12 octobre 2017 à 2:25:43

  • Partager sur Facebook
  • Partager sur Twitter
La source de 99% des bugs se trouve entre la chaise et le clavier.