Pare o MySQL:
service mysqld stop
inicie o MySQL assim
mysqld_safe --skip-grant-tables --skip-networking
Neste ponto, você deve conseguir se conectar ao mysql (da máquina local) como root.
Enquanto tentava fazer o MySQL remoto funcionar, de alguma forma consegui me trancar com a conta root.
Normalmente, eu paro o serviço MySQL e o reinicio usando /etc/init.d/mysql --init-file
, mas quando tento fazer isso, ele diz que o script foi convertido em um trabalho inicial e para usar o comando "service mysql". Infelizmente, até onde eu sei, o comando service
não suporta a opção --init-file
.
Existe alguma outra maneira de redefinir o host para o usuário root?
Por fim, essa opção será passada para mysqld_safe
; A documentação descreve isso em detalhes. Você pode descobrir como o upstart está invocando o MySQL e, em seguida, iniciá-lo manualmente de maneira semelhante à sua opção --init-file
adicionada. Certifique-se de iniciá-lo como o usuário certo, no entanto!
Se você estiver usando o Debian ou o Ubuntu, provavelmente descobrirá que existe um usuário debian-sys-maint
equivalente à raiz que você pode usar temporariamente; você encontrará a senha gerada automaticamente para isso em /etc/mysql/debian.cnf
. Pode haver alternativas em outros sistemas também? Esta opção provavelmente seria mais fácil,