domingo, 23 de agosto de 2015

Permitir acesso remoto no MySQL - Linux



Esses dias precisei liberar o acesso root no MySQL, já que por padrão o acesso externo do root é bloqueado. Após uma rápida pesquisa consegui liberar sem problemas, segue abaixo os passos que efetuei para liberar o acesso:


Como root no terminal do linux digite:
# vi /etc/mysql/my.cnf
Agora altere a seguinte linha..
bind-address = 127.0.0.1
..para..
bind-address = 0.0.0.0

Agora reinicie o serviço mysql com:
/etc/init.d/mysql restart

Entre no prompt do mysql com:
mysql -user=root --password=suasenha

Então digite o seguinte comando:
GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'suasenha';

Esse comando é bem simples, ele garante (GRANT) todos (ALL) os privilégios de acesso a todos (*.*) os databases do banco, ao (TO) usuário (‘root’) em todas as máquinas (‘%’) usando a senha do usuário root (IDENTIFIED BY ‘suasenha’). Traduzindo, você acessa tudo no banco com o usuário root em qualquer máquina remota.

Se quiser dar acesso somente a uma maquina específica troque ‘%’ pelo ip da máquina, por exemplo, dar acesso somente a máquina 192.168.0.2, ficaria assim o comando:
GRANT ALL ON *.* TO 'root'@'192.168.0.2' IDENTIFIED BY 'suasenha';

Obs: Onde estiver escrito suasenha, troque pela senha do usuário root.

Por boa prática de segurança, após liberar o root para acesso externo, limite no firewall acesso somente de IP's fixos.

Por hoje é só, have a nice day =D

Nenhum comentário:

Postar um comentário