Eu estava mascarando todos os pacotes externos (incluindo lo). Remover / editar as regras iptable -t nat POSTROUTING
resolveu o problema.
Estou tentando conectar-me ao mysql usando o comando
mysql -h 127.0.0.1
Ele aparece com o erro
ERROR 1045 (28000): Access denied for user 'root'@'mydomain.com' (using password: NO)
Por que o 127.0.0.1 está sendo convertido em meu nome de domínio e como posso corrigi-lo?
No entanto, funciona se eu não especificar um host (e por extensão, se 'localhost' for especificado).
Editar : parece que resolve o nome do domínio ao usar o TCP, por isso também falha ao usar
mysql -h localhost --protocol=TCP
Edit2 : Quando uso o skip-name-resolve, recebo um resultado semelhante, exceto mydomain.com
é substituído por x.x.x.x
, que é o IP público de mydomain.com
.
Provavelmente isso é causado por uma entrada de arquivo de hosts.
Talvez o mysql esteja escutando apenas em seu ip público e não em 0.0.0.0?
Não tenho certeza de que entendi sua pergunta, mas 127.0.0.1 é o endereço de loopback padrão. SO se o seu host tiver esse IP: 192.168.0.1 Então 192.168.0.1 = 127.0.0.1 = localhost
1) Verifique / etc / hosts e certifique-se de que 127.0.0.1 aponte apenas para localhost e não para mydomain.com. mydomain.com deve estar associado ao endereço IP real do servidor e não ao localhost.localdomain.
2) Também parece que você definiu a senha para root em sua instância mysql (na verdade, isso é uma coisa boa). Recomende adicionar o comutador "-p" ao seu login para que pareça:
mysql -h localhost -p
Você será solicitado a digitar a senha do root. Espero que isso ajude.