Alterando a senha do root no MySQL ou MariaDB

fevereiro 18, 2024 Por Joel Kern 0

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. 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;

Em ambos os casos, você deve ver a confirmação de que o comando foi executado com sucesso.

Passo 2- Reiniciando o bando de dados

Primeiro, pare a instância do servidor de banco de dados que você iniciou manualmente na Etapa 3. Esse comando procura pelo PID, ou processo ID, do processo MySQL ou MariaDB e envia SIGTERM para que ele saia sem problemas após executar as operações de limpeza.

Para o MySQL, use:

sudo kill cat /var/run/mysqld/mysqld.pid

Para MariaDB, use:

sudo kill /var/run/mariadb/mariadb.pid

Em seguida, inicie o servidor:

Para MySQL, use:

sudo systemctl start mysql

Para MariaDB, use:

sudo systemctl start mariadb

Agora você pode confirmar que a nova senha para o MySQL ou MariaDB foi alterada corretamente executando:

mysql -u root -p

O comando anterior vai solicitar a senha, você deve informar a senha do MySQL ou MariaDB que você acabou de redefinir. Com isso, você vai obter acesso ao prompt do banco de dados conforme o esperado.

Fonte: https://sempreupdate.com.br/como-redefinir-a-senha-de-root-do-mysql-ou-do-mariadb/