Acidentalmente me trancou fora do MySQL, alterando o host

8

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 nickjyc 27.08.2011 / 22:58

2 respostas

9

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.

    
por 27.08.2011 / 23:15
1

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,

    
por 27.08.2011 / 23:14

Tags