Erro ao conectar ao servidor MySQL remoto [ERRO 1042 (HY000): Não é possível obter o nome do host para o seu endereço]

3

Eu tenho a configuração do MySQL 5.5 Server em uma máquina Windows.

Eu posso me conectar ao servidor a partir do console / aplicativo em execução na mesma máquina, mas não em uma máquina remota. Ao conectar usando o seguinte comando:

mysql -h xx.xx.xx.xx --port=3306 -u root -p

Eu recebo o seguinte erro:

ERROR 1042 (HY000): Can't get hostname for your address

Eu tentei colocar a entrada do IP do cliente no arquivo %windir%\system32\drivers\etc\hosts do servidor como:

<client-ip>  <client-hostname>
  • Servidor: MySQL 5.5
  • SO: Windows XP
por M.N 25.08.2010 / 09:54

3 respostas

4

Eu acredito que isso tem a ver com o fato de que o MySQL tenta estabelecer o nome DNS associado ao seu endereço IP na conexão. Veja aqui para mais informações no site da MySQL.

Você tem duas opções:

1) Corrija o DNS reverso da máquina de conexão. Como você já adicionou a máquina ao arquivo de hosts, isso pode ser desnecessário. Você também deve emitir uma instrução FLUSH HOSTS no servidor MySQL. Veja o mesmo link acima para mais informações sobre isso.

2) Execute o MySQL com a opção '--skip-name-resolve'. No entanto, se você fizer isso, você não poderá usar nomes DNS em instruções GRANT. Em vez disso, você estará restrito a usar endereços IP.

2.1) ou coloque em my.ini :

[mysqld]
skip-name-resolve

Eu recomendaria (1) se você puder.

Espero que isso ajude.

    
por 25.08.2010 / 10:36
1

Este parece ser um bug relatado no MySQL ver5.5 . Foi resolvido usando a seguinte opção na seção [server] do arquivo my.ini

skip-name-resolve

Desativa a pesquisa de DNS pelo MySQL para conectar pares.

A única coisa a ter em mente é:

...in this case, you can use only IP numbers in the MySQL grant tables.

    
por 25.08.2010 / 14:05
-1

Eu tive o mesmo problema, mas no Windows 7. A desativação do Firewall do Windows funcionou para mim.

    
por 15.04.2015 / 11:27