Como Recuperar a Senha do Root no MySQL: Guia Passo a Passo
Em muitas situações é necessário resgatar a senha para o usuário root no banco de dados MySQL. Entre elas, a mais comum é a necessidade de prestar manutenção a um banco de dados que simplesmente “funcionava”, até que um dia o mesmo deixou de funcionar da forma inesperada. Isso acontece normalmente quando o responsável pela manutenção do banco tenha saído da empresa ou ainda se ele mesmo tenha se esquecido da senha.
Felizmente, resgatar a senha de root no MySQL é um processo simples.
NOTA: Este artigo presume que você esteja utilizando sistemas Linux ou Unix-like.
O primeiro passo é identificar o número do processo do MySQL. Em seguida, é necessário finalizar o processo do banco de dados.
Para realizar ambos passos em um só comando, execute na linha de comando como usuário root:
# kill `pidof mysqld`
Em seguida, é necessário criar um arquivo contendo as instruções de alteração da senha. É necessário que o arquivo seja criado em um diretório acessível ao usuário mysql. O diretório mais óbvio é ‘/var/lib/mysql’,
o diretório de dados padrão do MySQL. O nome do arquivo é irrelevante: podemos chamá-lo, por exemplo, de senha.sql:
# vim /var/lib/mysql/senha.sql
— Se você estiver usando MySQL com a versão 5.7.6 ou superior,
— insira o comando a seguir:
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MinhaNovaSenha’;
— Se você estiver usando MySQL com a versão inferior à 5.7.6,
— insira este comando:
SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘MinhaNovaSenha’);
Salve o arquivo. Dado que o arquivo foi criado com usuário root, a propriedade do mesmo deve ser dada ao usuário mysql do sistema operacional. Para isso, utilize o comando chown:
# chown mysql. /var/lib/mysql/senha.sql
Este tutorial presume que o arquivo esteja salvo no diretório ‘/var/lib/mysql’.
Assim sendo, altere o arquivo /etc/my.cnf (ou crie-o, caso necessário), e insira os parâmetros a seguir:
# vim /etc/my.cnf
[mysqld]
init-file=/var/lib/mysql/senha.sql
Salve o arquivo. Após este passo, basta iniciar o MySQL.
# systemctl start mysql
Finalmente, tente logar com a nova senha:
# mysql -pMinhaNovaSenha
OBSERVAÇÃO: Se você não remover o parâmetro init-file do arquivo /etc/my.cnf, o MySQL irá alterar a senha de root a cada reinício, o que pode ser inconveniente. Outro ponto a ser notado é que, caso o arquivo tenha as permissões suficientes, outros usuário podem visualizar a sua senha.
Remova o parâmetro init-file do arquivo /etc/my.cnf e exclua o arquivo /var/lib/mysql/senha.sql para maior segurança.
About author
Você pode gostar também
Descubra as novidades do PostgreSQL 13: suporte a colações não determinísticas
Com o lançamento recente do PostgreSQL 13 e com a grande maturidade das versões anteriores, algumas das novidades dessas versões mais recentes se tornam cada vez mais disponíveis para uso
Guia completo: Como fazer backup do PostgreSQL com o pgBackRest
Fazer backups regulares do seu banco de dados é uma prática essencial para garantir a segurança e a integridade dos seus dados. No PostgreSQL, uma ferramenta poderosa e altamente recomendada
Entenda o Middleware: A espinha dorsal da conectividade digital
No cenário tecnológico atual, a conectividade é a espinha dorsal que sustenta nossa vida digital. Imagine um ecossistema complexo de aplicativos, serviços e dispositivos, todos operando em conjunto perfeito. Essa