Si estas accediendo de forma remota tienes que dar permisos a root para que acceda des de fuera de localhost....
root@% ... % significa cualquier maquina.
root@localhost significa que root solo tiene permiso para conectar des de la misma maquina donde esta instalado MySQL.
Si tienes instalado phpmyadmin podras entrar con root como si fuera des de localhost y si tienes permisos podras cambir localhost por % si no sigue estos
pasos cambiando localhost por % ... creo.
O estos
pasos.
Cita: ...
Si quiere dar a un usuario específico acceso desde todas las máquinas dentro de un dominio dado (por ejemplo, mydomain.com), puede realizar un comando GRANT que use el carácter comodín '%' en la parte del equipo del nombre de cuenta:
....