Enquanto tentava fazer o MySQL funcionar, de alguma maneira eu consegui me trancar com a conta root.
Normalmente, eu parava o serviço MySQL e o reiniciava 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 service
comando não suporta a --init-file
opção.
Existe alguma outra maneira de redefinir o host para o usuário root?
Respostas:
Pare o MySQL:
então inicie o MySQL assim
Neste ponto, você deve conseguir conectar-se ao mysql (da máquina local) como root.
fonte
service mysqld restart --skip-grant-tables --skip-networking
. Depois de corrigir a raizservice mysql restart
,. No entanto, +1 !!!Por fim, essa opção será passada para
mysqld_safe
; a documentação descreve isso em detalhes. Você pode descobrir como o iniciante está invocando o MySQL e, em seguida, iniciá-lo manualmente da mesma maneira com sua--init-file
opção adicionada . Entretanto, certifique-se de iniciá-lo como o usuário certo!Se você estiver usando Debian ou Ubuntu, provavelmente encontrará um
debian-sys-maint
usuário equivalente à raiz que poderá ser capaz de usar temporariamente; você encontrará a senha gerada automaticamente para isso em/etc/mysql/debian.cnf
. Também pode haver alternativas em outros sistemas? Essa opção provavelmente seria mais fácil,fonte