Bem, então, verifique se o mysql não está sendo executado:
sudo aptitude install nmap
E então:
sudo nmap -sS <ipofdbserverhere>
Você também pode instalar a ferramenta no servidor mysql, o comando seria:
sudo nmap -sS localhost
Em ambos os casos, sua resposta deve ser assim.
[simmel]@[mars]$ sudo nmap -sS 172.16.1.41
Starting Nmap 6.40 ( http://nmap.org ) at 2015-04-08 15:09 CEST
Nmap scan report for 172.16.1.41
Host is up (0.010s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
3306/tcp open mysql
Nmap done: 1 IP address (1 host up) scanned in 33.17 seconds
Se ele mostra a porta 3306, é realmente aberto e pronto para conexões. Se esse for o caso, use mysql via linha de comando do seu computador.
mysql -u<USER> -p<PASSWORD> -h<ipofdbserverhere> <databasename>
A mesma mensagem aparece? Ligação recusada? Então, seu usuário provavelmente tem os direitos errados.
Outra razão para isso é quando o servidor mysql está ligado a um determinado endereço, como 127.0.0.1.
Para descobrir, verifique a saída de:
sudo netstat -tlpen
Se o mysql não estiver ouvindo 0.0.0.0:3306
, mas para 127.0.0.1:3306
, você só poderá se conectar a partir do localhost.
Para alterar, vá para /etc/mysql/my.cnf
e comente a seguinte linha:
bind-address = 127.0.0.1
A maneira de comentá-lo é adicionar um caractere #
inicial:
#bind-address = 127.0.0.1
Salve o arquivo e reinicie o serviço mysql
sudo service mysql restart
Agora você deve conseguir se conectar.
Para alterar a porta, insira, por exemplo:
port = 8888
em /etc/mysql/my.cnf
.
Salve o arquivo e reinicie o serviço mysql:
sudo service mysql restart