Quando instalamos o MySQL no Windows, geralmente especificamos a senha do usuário root. Isso ajuda a manter o MySQL Server seguro. Suponha que você ingressou em uma nova organização e o gerenciamento dessa organização planeja migrar alguns bancos de dados MySQL para o SQL Server. Para fazer isso, você precisa da credencial do usuário root, mas a organização não acompanhou a senha. Nesse cenário, devemos redefinir a senha do usuário root.
Neste artigo, vamos aprender como podemos redefinir a senha de root no MySQL Server no Windows 10. Preparei um ambiente de demonstração em minha estação de trabalho para demonstração, e os detalhes são explicados na próxima seção.
S etup Ambiente Windows
Vamos aprender os métodos para redefinir senhas de root em um ambiente Windows. Para a demonstração, criei uma máquina virtual e instalei o Windows 10 e o MySQL Server nela. A instalação do servidor MySQL foi realizada usando o assistente de instalação do MySQL. A configuração do MySQL é a seguinte:
- Versão do MySQL: 8.0.23 (MySQL Community Server)
- Diretório inicial do MySQL: C:\MySQL_Home\
- Local do diretório de dados: C:\MySQL_Data_Directory\
- Local do arquivo de inicialização: C:\MySQL_Home\my.ini
Você pode ver os detalhes acima no MySQL workbench. Abra o MySQL Workbench e conecte-se ao MySQL Server? Clique em Status do servidor no painel Navegador. Veja a seguinte imagem:
Além disso, você pode usar o mysqladmin comando para visualizar os detalhes do MySQL Server. O mysqladmin O comando é usado para executar várias atividades administrativas, como criar e descartar o banco de dados, visualizar o status do servidor, detalhes de configuração e muito mais. Você pode ler 4.5.2 mysqladmin — Um Programa de Administração do Servidor MySQL para saber mais sobre o mysqladmin comando.
Execute a seguinte consulta para preencher o status do servidor MySQL.
C:\MySQL_Home\bin>mysqladmin -u root -p version
Enter password: **************
Etapas para redefinir a senha do usuário root:
- Crie um arquivo de inicialização que tenha o comando ALTER USER.
- Pare os serviços MySQL.
- Inicie os serviços usando mysqld e especifique o arquivo que possui o comando ALTER USER.
- Conecte-se ao MySQL workbench e redefina a senha de root.
- Reinicie o serviço.
Agora, vamos ver como podemos redefinir a senha do root.
Etapa 1:crie um arquivo de inicialização do MySQL.
Primeiro, vamos criar um arquivo de texto com uma consulta que é usada para alterar a senha. Para alterar a senha, usaremos o seguinte comando ALTER USER.
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234567';
Salve o arquivo no local apropriado.
Etapa 2:interrompa os serviços MySQL.
Para alterar a senha, devemos parar os serviços MySQL. Para parar os Serviços MySQL, Abra o Painel de Controle ? Abra Ferramentas administrativas ? Abra Serviços ? Localize MySQL Serviço da lista? Clique com o botão direito do mouse em MySQL e selecione Parar .
Como alternativa, você pode executar o seguinte comando do PowerShell para interromper o MySQL serviço.
PS C:\> net stop MySQL;
Etapa 3:inicie os serviços usando o arquivo de inicialização.
Estamos usando o mysqld comando para iniciar o serviço MySQL. O mysqld é um programa de thread único. Possui várias opções de configuração que podem ser especificadas na inicialização do MySQL Server. Você pode visualizar a lista de opções executando o comando a seguir.
C:\>C:\MySQL_Home\bin\mysqld --verbose --help
Vamos usar o – -init-file opção no mysqld comando. O – -arquivo-init opção lê o comando do arquivo especificado na opção. Se você instalou o MySQL Server usando o assistente de instalação do MySQL, como eu fiz, você deve especificar os – -defaults-files . No arquivo – – defaults opção e o local do arquivo de configuração my.ini. Criei um arquivo chamado ResetRootPassword.txt no D:\PasswordFile diretório. O mysqld comando com uma opção é o seguinte:
C:\>C:\MySQL_Home\bin\mysqld --defaults-file = "C:\MySQL_Home\my.ini"
--init-file="D:\PasswordFile\ResetRootPassword.txt"
Etapa 4:conecte-se ao MySQL e redefina a senha.
Agora, vamos nos conectar ao MySQL usando o MySQL workbench. Abra o ambiente de trabalho do MySQL? Conecte-se usando o usuário root.
Especifique a nova senha e conecte-se ao MySQL.
Uma vez conectado, execute o seguinte comando para redefinir a senha.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123';
Depois que a senha for redefinida, feche o ambiente de trabalho do MySQL, elimine o serviço mysqld clicando em Ctrl+C comando.
Depois que os serviços forem interrompidos, exclua o ResetRootPassword.txt Arquivo.
Etapa 5:reinicie o serviço MySQL.
Agora, reinicie o serviço MySQL em services.msc. Abrir painel de controle? Abra ferramentas administrativas ? Abra Serviços ? Localize o MySQL serviço ? Clique com o botão direito do mouse no serviço MySQL e selecione Iniciar .
Agora, conecte-se ao servidor MySQL usando o usuário root conforme explicado na seção anterior.
Como você pode ver na captura de tela a seguir, estamos conectados ao MySQL Server.
Resumo
Como administradores de banco de dados, é nossa responsabilidade manter o controle de senhas importantes, especialmente senhas de superusuário. Se a senha for perdida e irrecuperável, pode ser muito estressante. Neste artigo, abordei o processo passo a passo de redefinir a senha do usuário root. Este artigo pode ser útil para recuperar a senha de root do MySQL no Windows.