La tua root account, e questa dichiarazione si applica a qualsiasi account, potrebbe essere stato aggiunto solo con l'accesso localhost (che è consigliato).
Puoi verificarlo con:
SELECT host FROM mysql.user WHERE User = 'root';
Se vedi solo risultati con localhost e 127.0.0.1 , non è possibile connettersi da una fonte esterna. Se vedi altri indirizzi IP, ma non quello da cui ti stai connettendo, anche questa è un'indicazione.
Dovrai aggiungere l'indirizzo IP di ogni sistema a cui vuoi concedere l'accesso, quindi concedere i privilegi:
CREATE USER 'root'@'ip_address' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip_address';
Se vedi % , beh, allora c'è un altro problema in quanto è "qualsiasi fonte remota". Se invece vuoi che uno o tutti i sistemi si connettano tramite root, usa il % carattere jolly per concedere l'accesso:
CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
Infine, ricarica le autorizzazioni e dovresti essere in grado di avere l'accesso remoto:
FLUSH PRIVILEGES;