Habilitando Conexões Remotas no MySQL (Linux)

Comentarios


A instalação default do MySQL não permite se conectar remotamente no banco de dados, possibilitando  apenas acesso local.

Neste cenário, ao tentar conectar remotamente no banco, um dos possíveis erros é:
KHost '' is not allowed to connect to this MySQL serverConnect
Para habilitar o acesso externo, basta realizar os seguintes passos:

1. Editar o arquivo:
/etc/mysql/my.cnf
2. Alterar a seguinte linha:
bind-address = 127.0.0.1
Deixando assim:
bind-address = 0.0.0.0
3. Reiniciar o Mysql
# /etc/init.d/mysql restart
4. Conectar no Banco via localhost:
# mysql -u root -p
5. Habilitar o acesso:
mysql> grant all privileges on *.* to 'user'@'ip' identified by 'passwd';
Onde:
user: é o usuário que você deseja usar.
ip: a máquina remota que você quer permitir.
passwd: a senha do usuário

Exemplo:
mysql> grant all privileges on *.* to 'root'@'10.0.0.60' identified by 'teste';
Para habilitar toda a rede classe C do exemplo basta usar o wildcard %
mysql> grant all privileges on *.* to 'root'@'10.0.0.%' identified by 'teste';
Para habilitar para qualquer ip:
mysql> grant all privileges on *.* to 'root'@'%' identified by 'teste';
O ultimo passo é fazer o flush da configuração:
mysql> flush privileges;

Remover acesso remoto

Caso você queira desfazer o acesso remoto é bem simples também.

1. Altere a seguinte linha:
bind-address = 0.0.0.0
Deixando assim:
bind-address = 127.0.0.1
2. Logue no Mysql:
# mysql -u root -p
3. Delete todos os privilégios remotos:
DELETE FROM mysql.user WHERE User = ‘root’ AND Host = ‘%’;FLUSH PRIVILEGES;
4. Reinicie o Mysql e pronto, não estará mais acessível remotamente.


Abraços!

#Compartilhar: Facebook Twitter Google+ Linkedin Technorati Digg

0 comentários:

Tecnologia do Blogger.