Mise à jour :
Comme mentionné dans les commentaires, depuis MySql 8, vous devez d'abord créer explicitement l'utilisateur, donc la commande ressemblera à :
CREATE USER 'root'@'%' IDENTIFIED BY 'root'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Réponse originale :
Ce processus comporte deux étapes :
a) Accorder des privilèges. En tant qu'utilisateur root, exécutez-le en remplaçant 'password'
avec votre mot de passe root actuel :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';
b) lier à toutes les adresses :
Le moyen le plus simple est de commenter la ligne dans votre my.cnf
fichier :
#bind-address = 127.0.0.1
et redémarrez mysql
service mysql restart
Par défaut, il se lie uniquement à localhost, mais si vous commentez la ligne, il se lie à toutes les interfaces qu'il trouve. Commenter la ligne équivaut à bind-address=*
.
Pour vérifier où le service mysql s'est lié, exécutez en tant que root :
netstat -tupan | grep mysql
Mise à jour pour Ubuntu 16 :
Le fichier de configuration est (maintenant)
/etc/mysql/mysql.conf.d/mysqld.cnf
(au moins sur Ubuntu 16 standard)