Você precisa conceder explicitamente o acesso de hosts externos ao usuário
geralmente é melhor não usar raiz externamente
Eu tenho uma instância Mysql instalada (não como um serviço) em uma máquina virtual WinXP (VirtualBox). Eu instalei a partir do instalador com GUI no site MySql. Tudo funciona perfeitamente, mas a conexão MySql recusa conexões externas. Quais são os passos mais simples para se conectar a esta instância do MySQL de fora? Eu uso um usuário chamado 'root' ...
Você precisa conceder explicitamente o acesso de hosts externos ao usuário
geralmente é melhor não usar raiz externamente
Eu acho que o usuário root padrão só tem acesso na máquina local. Isso oferece algum tipo de proteção, já que a conta 'root' em muitos casos não tem senha por padrão. Somente usuários que podem acessar a máquina podem administrar como root (por padrão).
Você precisa criar outro usuário que possa acessar o MySql remotamente. Consulte a página Adicionando usuários para obter mais detalhes sobre isso. Está bem explicado lá.
Note que você deve estar logado no Windows e MySql em execução.
Se você desejar acessar o MySql quando estiver desconectado, precisará instalá-lo como um serviço.
Usando as respostas de @Adam e @ codinguser, e assumindo que o host do VirtualBox é 192.168.57.1:
CREATE USER 'root'@'192.168.57.1' IDENTIFIED BY 'pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.57.1' with grant option;
Nota: