Votre serveur MySQL n'accepte que les connexions sur *nix socket (/var/run/mysqld/mysqld.sock si vous utilisez Ubuntu) ou pour localhost uniquement.
Vous devez modifier votre my.cnf (sur Ubuntu, il se trouve à nouveau dans /etc/mysql/my.cnf) et modifier les éléments suivants :
bind-address = 0.0.0.0
Et commentez ce qui suit
#skip-networking
Redémarrez enfin MySQL.
Soyez prudent avec cela, si votre machine MySQL est accessible depuis l'Internet public, elle acceptera les connexions de tout le monde !