Blog

Bind Address do Mysql no Linux
Bind Address do Mysql no Linux

Um dos problemas mais comuns de conectividade e mais fáceis de resolver

26 de Agosto de 2013 às 10:23

Grande parte dos servidores de jogos utilizam as configurações padrões dos serviços instalados em seus servidores de jogos. Tudo funciona muito bem até que você percebe que precisa que seu banco de dados precisa ser acessado externamente. Em 90% dos casos o firewall é o responsável pelo bloqueio deste acesso externo, mas há também uma configuração no MySql que impede o acesso não autorizado. Estamos falando do bind-address.

Uma forma de verificar se o mysql está aceitando conexões apenas internas é executando o comando "netstat -ln | grep 3306" (3306 = porta padrão mysql). Se o resultado for semelhante ao abaixo significa que o MySql está aceitando apenas conexões internas.

tcp        0      0 127.0.0.1:3306            0.0.0.0:*               LISTEN

Como fazemos para mudar isso?

Alguns tutoriais recomendam que seja feita a alteração no arquivo de configuração /etc/mysql/my.cnf, comentando a linha skip-networking, mas nem sempre encontramos a linha informada. Segue então algo que resolveu 99% dos casos de conectividade externa:

Primeiro faça um backup do arquivo de configuração:

# cp /etc/mysql/my.cnf /etc/mysql/my.cnf.backup

Depois abra o arquivo de configuração com qualquer editor:

# gedit /etc/mysql/my.cnf

Procure por uma linha escrito:

bind-address          = 127.0.0.1

Adicione um ; antes do nome

;bind-address          = 127.0.0.1

Salve e saia do editor.

Reinicie o mysql-server:

# cd /etc/init.d
# ./mysql restart

ou

# ./mysqld restart

Espere subir e tente o acesso novamente.

Grande abraço

Por Eliemar Junior

Fonte: Viva o Linux