web-dev-qa-db-fra.com

Impossible de se connecter au serveur MySQL local via le socket '/var/run/mysqld/mysqld.sock' (2)

J'ai un serveur mail configuré en utilisant pigeonnier + postfix + mysql et tout s'est très bien passé sur le serveur (serveur Ubuntu). Mais au cours de la semaine dernière, il a cessé de fonctionner correctement. Il n'envoie pas de courrier électronique. Lorsque j'essaie de telnet localhost smtp je me connecte avec succès, mais lorsque je fais mail from:<[email protected]> et que j'appuie sur Entrée, il se bloque, rien ne se passe.

Après avoir examiné le fichier /var/log/mail.log, j'ai découvert que probablement (99%) le problème se trouvait sur postfix lorsqu'il essayait de se connecter au serveur MySQL. Si vous voyez le fichier journal donné ci-dessous, vous pouvez voir qu'il est écrit Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2).

Nov 14 21:54:36 ns1 dovecot: dovecot: Killed with signal 15 (by pid=7731 uid=0 code=kill)
Nov 14 21:54:36 ns1 dovecot: Dovecot v1.2.9 starting up (core dumps disabled)
Nov 14 21:54:36 ns1 dovecot: auth-worker(default): mysql: Connected to localhost (mailserver)
Nov 14 21:54:44 ns1 postfix/postfix-script[7753]: refreshing the Postfix mail system
Nov 14 21:54:44 ns1 postfix/master[1670]: reload -- version 2.7.0, configuration /etc/postfix
Nov 14 21:54:52 ns1 postfix/trivial-rewrite[7759]: warning: connect to mysql server localhost: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Nov 14 21:54:52 ns1 postfix/trivial-rewrite[7759]: fatal: mysql:/etc/postfix/mysql-virtual-alias-maps.cf(0,lock|fold_fix): table lookup problem
Nov 14 21:54:53 ns1 postfix/master[1670]: warning: process /usr/lib/postfix/trivial-rewrite pid 7759 exit status 1
Nov 14 21:54:53 ns1 postfix/cleanup[7397]: warning: problem talking to service rewrite: Connection reset by peer
Nov 14 21:54:53 ns1 postfix/master[1670]: warning: /usr/lib/postfix/trivial-rewrite: bad command startup -- throttling
Nov 14 21:54:53 ns1 postfix/smtpd[7071]: warning: problem talking to service rewrite: Success

J'ai essayé netstat -ln | grep mysql et ça retourne

unix 2 [ ACC ] STREAM LISTENING 5817 /var/run/mysqld/mysqld.sock.

Le contenu du fichier /etc/postfix/mysql-virtual-alias-maps.cf est ici:

user = stevejobs
password = Apple
hosts = localhost
dbname = mailserver
query = SELECT destination FROM virtual_aliases WHERE source='%s'

Ici, j'ai essayé de changer hosts = 127.0.0.1 mais on dit warning: connect to mysql server 127.0.0.1: Can't connect to MySQL server on '127.0.0.1' (110)

Je suis donc perdu et je ne sais pas où changer pour résoudre le problème. Toute aide serait grandement appréciée.

Je vous remercie.

EDIT 1

Quand je fais netstat -na, je vois que mysql n'est pas lié à localhost ni à 127.0.0.1. Serait-ce le problème aussi?

bakhtiyor@ns1:~$ netstat -na | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN   
9
Bakhtiyor

Cela semble très stupide mais j'ai résolu le problème. Je n'avais pas remarqué qu'un administrateur système bloquait en quelque sorte le port 3306 pour tous les hôtes du pare-feu, et je ne pouvais donc pas me connecter à mysql. Après avoir supprimé cette restriction, j'ai pu me connecter à mysql sans aucun problème. Merci pour vos suggestions et votre aide.

6
Bakhtiyor

Avez-vous essayé de vous connecter au serveur Mysql?

mysql -u username -p

Aussi, vous pouvez essayer de changer l'adresse d'écoute dans /etc/mysql/my.cnf en 127.0.0.1 et redémarrer MySQL

# /etc/mysql/my.cnf
bind-address = 127.0.0.1
3
Salem

J'avais un problème similaire. Remplacer "hosts = localhost" par "hosts = 127.0.0.1" et régler l'adresse de liaison sur la même adresse l'a corrigé pour moi (l'adresse de liaison a été définie à 0.0.0.0 pour une raison quelconque)

3
Jussi Timonen

Je venais de recevoir cette même erreur sur l'un des ordinateurs de l'entreprise.

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

J'avais aussi souvent cette erreur lorsque j'ai essayé de lancer des programmes X-Windows avec ssh:

GConf Error: Failed to contact configuration server; 
some possible causes are that you need to enable TCP/IP networking for ORBit,
or you have stale NFS locks due to a system crash

Il s'avère que j'avais un système de fichiers racine complètement rempli, sans espace disque disponible, de sorte que mon système ne pouvait pas écrire beaucoup de fichiers nécessaires. J'ai eu toutes sortes d'erreurs, liées à de nombreux programmes différents. (Impossible de se connecter via GDM, le papier peint GDM est devenu noir, les erreurs de fichier de verrouillage gconf, etc.)

Tout ce que j'ai fait, c'est entrer dans cette commande simple pour supprimer plus de 400 Mo de fichiers de la partition racine devenus inutiles.

Sudo apt-get autoremove

Cela a donné à mon système de fichiers racine le répit dont il avait besoin. Maintenant tout se passe bien. Je suppose qu'un répertoire racine de 10 Go n'est pas suffisant pour gérer plus de deux ans de mises à jour Ubuntu.

Si quelqu'un s'en soucie, le système exécute Ubuntu 10.04 depuis sa sortie. Le système met à jour au moins une fois par semaine. La date d'aujourd'hui est le 9-6-2012, ce qui fait presque 2 ans et demi de mises à jour.

2
Happy Gecko

Ce qui m'a finalement aidé à purger (à ne pas supprimer!) Tous les paquets apt-get liés à mysql à l'exception de libmysqlclient16 qui était en état de désinstallation (je ne sais pas ce que c'est).

Alors, faites juste:

dpkg --get-selections | grep mysql

et alors:

Sudo apt-get purge <package_name>

Commencez en commun puis allez au client puis au serveur.

1