
diegomrodrigues
(usa Ubuntu)
Enviado em 01/12/2019 - 22:01h
Uma maneira simples de alterar a senha do root para versões recentes do MySQL é usando o comando ALTER USER. No entanto, esse comando não funcionará agora porque as tabelas de permissões não estão carregadas.
Vamos dizer ao servidor de banco de dados para recarregar as tabelas de permissões emitindo o comando FLUSH PRIVILEGES.
FLUSH PRIVILEGES;
Para o MySQL 5.7.6 e mais recentes, bem como o MariaDB 10.1.20 e mais recentes, use o seguinte comando:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'nova-senha';
Para o MySQL 5.7.5 e mais antigo, bem como o MariaDB 10.1.20 e mais antigo, use:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('nova-senha');
Certifique-se de substituir nova-senha pela senha que você vai querer colocar para o seu usuário root.
Nota: Se o comando ALTER USER não funcionar, geralmente é indicativo de um problema maior. No entanto, você pode tentar UPDATE … SET para redefinir a senha de root.
UPDATE mysql.user SET authentication_string = PASSWORD(nova-senha') WHERE User = 'root' AND Host = 'localhost';
Se você usou o comando anterior o UPDATE … SET, lembre-se de recarregar as tabelas de permissões depois disso, com esse comando:
FLUSH PRIVILEGES;
Feito isso, saia do prompt do bando de dados:
exit;
Abraço,
Diego M. Rodrigues