J'ai configurer le serveur de messagerie en utilisant dovecot + postfix + mysql et il fonctionnait très bien sur le serveur (Ubuntu Server). Mais la semaine dernière, il a cessé de fonctionner correctement. Il n'envoie pas d'e-mail. Lorsque j'essaie de telnet localhost smtp
me connecter avec succès, mais lorsque je le fais mail from:<[email protected]>
et que j'appuie sur Entrée, il se bloque, rien ne se passe.
Après avoir examiné le /var/log/mail.log
fichier, j'ai découvert que probablement (99%) le problème est sur le suffixe lorsqu'il essaie de se connecter au serveur MySQL. Si vous voyez le fichier journal donné ci-dessous, vous pouvez voir qu'il dit 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 revient
unix 2 [ ACC ] STREAM LISTENING 5817 /var/run/mysqld/mysqld.sock
.
Le contenu du /etc/postfix/mysql-virtual-alias-maps.cf
fichier 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 ça ditwarning: connect to mysql server 127.0.0.1: Can't connect to MySQL server on '127.0.0.1' (110)
Donc, je suis 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 lié ni à localhost ni à 127.0.0.1. Serait-ce aussi le problème?
bakhtiyor@ns1:~$ netstat -na | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
J'avais un problème similaire. La modification de "hosts = localhost" en "hosts = 127.0.0.1" et la définition de 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)
la source
Avez-vous essayé de vous connecter au serveur Mysql?
Vous pouvez également essayer de changer l'adresse d'écoute dans /etc/mysql/my.cnf en 127.0.0.1 et redémarrer MySQL
la source
Je venais de recevoir cette même erreur sur l'un des ordinateurs de l'entreprise.
J'obtenais également beaucoup cette erreur lorsque j'ai essayé d'exécuter des programmes X-windows via ssh:
Il s'avère que j'avais un système de fichiers racine qui était complètement rempli, sans espace disque libre, donc mon système ne pouvait pas écrire beaucoup de fichiers nécessaires. J'obtenais toutes sortes d'erreurs, liées à de nombreux programmes différents. (Impossible de se connecter via GDM, le fond d'écran GDM est devenu noir, les erreurs du fichier de verrouillage gconf, etc ...)
Tout ce que j'ai fait était d'entrer cette commande simple pour se débarrasser de plus de 400 Mo de fichiers dans la partition racine qui n'étaient plus nécessaires.
Cela a donné à mon système de fichiers racine l'espace de respiration dont il avait besoin. Maintenant, tout va bien. Je suppose qu'un répertoire racine de 10 Go ne suffit pas pour gérer plus de deux ans de mises à jour d'Ubuntu.
Si quelqu'un s'en soucie, le système exécute Ubuntu 10.04 depuis sa sortie. Le système se met à jour au moins une fois par semaine. La date d'aujourd'hui est le 9-6-2012, c'est donc presque 2 ans et demi de mises à jour.
la source
Ce qui m'a finalement aidé, c'est la purge (et non la suppression!) De tous les paquets apt-get liés à mysql, à l'exception de ceux
libmysqlclient16
qui étaient en état de désinstallation (je ne sais pas trop ce que c'est).Alors, faites simplement:
et alors:
Commencez par commun puis allez au client puis au serveur.
la source
libmysqlclientXX