
Opa, beleza? As vezes temos alguns problemas com a senha do usuário “root” no MySQL Server, ou esquecemos, ou simplesmente precisamos recuperar a senha que foi implementada por outro profissional de TI. Por esse motivo resolvi compartilhar com você esse tutorial.
A primeira coisa a se fazer para recuperar a senha do “root” é parar o serviço do MySQL Server no servidor ou host Linux.
Em ambientes baseados em Debian:
1 |
service mysql stop |
Para CentOS 6:
1 |
/etc/init.d/mysqld stop |
Já no CentOS 7 a sintaxe para parar o serviço muda:
1 |
systemctl stop mysqld |
O próximo passo é adicionar um parâmetro ao arquivo de configuração do MySQL, o “my.cnf”:
Em ambientes baseados no Debian, pode ser que o arquivo principal esteja em “/etc/mysql/”
1 |
vi /etc/mysql/my.cnf |
Já no CentOS é direto na estrutura do “/etc”
1 |
vi /etc/my.cnf |
Insira a linha abaixo no final do arquivo:
1 |
skip-grant-table |
Em seguida, após salvar o arquivo com o parâmetro acima adicionado, inicie novamente o serviço do MySQL.
Debian:
1 |
service mysql start |
CentOS 6:
1 |
/etc/init.d/mysqld start |
CentOS 7:
1 |
systemctl start mysqld |
Agora vamos logar no console do MySQL, sem o parâmetro “-p” responsável pela autenticação por senha:
1 |
mysql -u root |
Após logar no console do MySQL, execute o processo abaixo para recuperar a senha do “root”.
1 2 3 4 |
mysql> USE mysql; mysql> UPDATE user set password=PASSWORD('senha') WHERE user='root'; mysql> FLUSH PRIVILEGES; mysql> quit |
Agora edite novamente o arquivo “my.cnf” e comente ou exclua a linha com o parâmetro “skip-grant-table”, agora reinicie o serviço do mysql.
Debian:
1 |
service mysql restart |
CentOS 6:
1 |
/etc/init.d/mysqld restart |
CentOS 7:
1 |
systemctl restart mysqld |
Agora pode logar novamente com o root e a senha que você definiu.
1 |
mysql -u root -psenha |
Dúvidas, comentário e sugestões postem nos comentários…
👋🏼 Valeu! e até a próxima!
Johnny Ferreira
johnny.ferreira.santos@gmail.com
http://www.tidahora.com.br