Redefinindo a senha de root do MySQL quando a senha atual não é conhecida

Eu herdei um servidor que tem o mysql instalado nele. Eu não tenho a senha mysql para qualquer usuário, nem mesmo o root (embora eu tenha a senha root do linux). Além disso, só estou ciente de uma outra conta de usuário besdies root, e essa não tem privilégios para executar qualquer ação, nem mesmo SELECT.

Eu tentei parar o mysql servicw, reiniciando com a opção skip grant tables e apenas logando sem senha:

<code>service mysqld stop
service mysqld start --skip-grant-tables &
mysql -u root
</code>

Mas pegue o seguinte erro:

<code>Access denied for user 'root'@'localhost' (using password: NO)
</code>

Então tentei redefinir a senha:

<code>mysqladmin -u root password 'newpw'
</code>

Mas isso também dá um erro de acesso negado.

Eu também tentei logar como o outro usuário (sem pw) e executar o seguinte comando:

<code>UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
</code>

e recebi este erro:

<code>ERROR 1142 (42000): UPDATE command denied to user ''@'localhost' for table 'user'
</code>

Eu também tentei remover o mysql e reinstalar, mas recebo os mesmos erros.

Alguma sugestão?

questionAnswers(6)

yourAnswerToTheQuestion