O postfix não pode se conectar ao MariaDB no 127.0.0.1

1

(Sim, essa pergunta parece muito semelhante , mas Eu entendo por que recebo a mensagem. O que eu não obtenho, e não consigo encontrar nenhuma informação palpável sobre o meu próprio, é o que fazer sobre isso. Então, aqui estou eu.)

Estou tentando configurar o Postfix e o Dovecot no meu VPS, decidindo usar o caminho do MySQL com o MariaDB. Seguindo este guia , que parece muito bem.

Chegou ao ponto de testar os arquivos de configuração do banco de dados com o postmap, quando o servidor simplesmente recusava a conexão. Esta é a mensagem de erro que recebo;

postmap: warning: connect to mysql server 127.0.0.1: Can't connect to MySQL server on '127.0.0.1' (111 "Connection refused")
postmap: fatal: table mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf: query error: Transport endpoint is not connected

O arquivo de configuração do MariaDB está configurado para ligar com o 127.0.0.1, eu abri o 3306 para o 127.0.0.1 e até tentei desabilitar o firewall completamente sem nenhuma mudança.

Parece que o IP e a porta não podem ser culpados então, e eu assumo que esse "ponto de extremidade de transporte" deve ser o culpado - se não for apenas mais uma maneira de se referir ao IP / porta.

Se alguém tiver sugestões sobre o que eu posso tentar contornar isso, eu ficaria muito grato.

Edit: Se isso faz alguma diferença, estou usando o nginx também.

Editar II:     Resultados de 'status do serviço mysql':

* /usr/bin/mysqladmin  Ver 9.1 Distrib 10.1.11-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Server version          10.1.11-MariaDB-1~trusty-log
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/run/mysqld/mysqld.sock
Uptime:                 2 hours 37 min 16 sec
    
por Aurora Vollvik 31.01.2016 / 17:41

1 resposta

1

Encontrei a resposta aqui, depois que HBruijn me colocou no caminho certo: link

MariaDB tem a diretiva de rede de salto ativada como padrão, que interrompe todas as conexões TCP / IP. Depois de comentar, mas deixando o bind-address, deixo o MariaDB ouvir o TCP na porta padrão (3306) apenas para conexões locais.

Altere isso em my.cnf:

#skip-networking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1

Reiniciei o serviço mysql e testei para ver quais portas foram ouvidas;

# netstat -tln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
..some records..
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

Também logou com sucesso no MariaDB através de 127.0.0.1, e tudo funciona! Yay!

# mysql -u mailuser -h 127.0.0.1 -D mailserver -p
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 49
Server version: 10.1.11-MariaDB-1~trusty-log mariadb.org binary distribution

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [mailserver]>It finally works!
    
por 31.01.2016 / 21:39