MySQL

1. Parando o banco de dados MySQL

Inicialmente será necessário parar o servidor do banco de dados para poder alterar a senha root através do seguinte comando:

# /etc/init.d/mysql stop

Uma vez com o banco de dados parado podemos acessá-lo para redefinição de senha.

2. Reiniciando servidor sem fase de autenticação

Ao carregar o servidor MySQL sem determinadas tabelas de controle de permissão permitirá que você acesse a linha de comando do banco de dados com privilégios de root, mesmo sem fornecer senha.

Inicie o servidor MySQL com o comando abaixo:

# mysqld_safe --skip-grant-tables --skip-networking &

–skip-grant-tables: não carrega as tabelas de permissões que armazenam informações de privilégios dos usuários.

–skip-networking: devido ao parâmetro anterior, por segurança, também deve ser desativado a conexão pela internet evitando que outros se conectem ou pessoas mal-intencionadas.

&: o “e” no final é para que o processo seja executado em segundo plano, assim você pode continuar a usar o terminal.

Agora você poderá efetuar o login ao MySQL com acesso root mesmo sem senha:

# mysql -u root

3. Redefinir senha do administrador

Uma vez realizado os passos anteriores, ou caso você deseje apenas alterar sua senha root, conecte-se ao banco de dados MySQL com o comando abaixo:

Substitua a palavra “SENHA_SAN” por uma nova senha, e lembre de manter as aspas simples entre a senha:

use mysql; UPDATE user SET Password=PASSWORD('SENHA_SAN') WHERE User='root'; FLUSH PRIVILEGES; exit;

Será apresentado uma confirmação de que o comando acima foi executado com sucesso.

4. Reiniciando banco de dados MySQL

Rode o comando para iniciar o servidor:

# /etc/init.d/mysql restart

Para confirmar os passos anteriores e validar a senha, execute o comando:

# mysql -u root mysql -p

Esse comando irá solicitar a senha, devendo você informar a senha recém configurada.


Saiba mais na documentação oficial do MySQL: https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html