Como redefinir a senha root do MySQL ou MariaDB
Há alguns meses, configurei a pilha LAMP no servidor Ubuntu 18.04. Hoje tentei fazer login como usuário root no meu servidor de banco de dados, mas esqueci completamente a senha. Depois de algumas pesquisas na web e passando pelo fórum do MySQL, redefini com êxito a senha do usuário root do MySQL. Para aqueles que estão se perguntando como fazer isso, este breve tutorial explica as etapas para redefinir a senha do MySQL ou MariaDB Root em sistemas operacionais Linux e semelhantes ao Unix.
Redefinir a senha do MySQL ou MariaDB Root
Primeiro, pare o servidor de banco de dados.
Se você usa MySQL, digite o seguinte comando e pressione a tecla ENTER.
sudo systemctl stop mysql
Para MariaDB:
sudo systemctl stop mariadb
Em seguida, reinicie o servidor de banco de dados sem verificação de permissão usando o seguinte comando:
sudo mysqld_safe --skip-grant-tables &
Aqui, a opção --skip-grant-tables
permite que você se conecte sem senha e com todos os privilégios.
Se você iniciar seu servidor com esta opção, ele também ativará a opção --skip-networking
que é usada para evitar que outros clientes se conectem ao servidor de banco de dados.
E o símbolo e comercial (&) é usado para executar o comando em segundo plano, então você pode digitar os outros comandos nas etapas a seguir.
Esteja ciente de que o comando acima é perigoso e seu servidor de banco de dados se torna inseguro. Você deve executar este comando apenas por um breve período para redefinir a senha.
Em seguida, faça login em seu servidor MySQL/MariaDB como usuário root
:
mysql
No prompt mysql>
ou MariaDB [(none)]>
, execute o seguinte comando para redefinir o banco de dados Senha do usuário root
:
UPDATE mysql.user SET Password=PASSWORD('ostechnix') WHERE User='root';
Substitua ostechnix no comando acima por sua própria senha.
Em seguida, digite os seguintes comandos para sair do console mysql.
FLUSH PRIVILEGES;
exit
Por fim, desligue o servidor de banco de dados em execução que você iniciou anteriormente com a opção --skip-grant-tables
. Para fazer isso, execute:
sudo mysqladmin -u root -p shutdown
Você será solicitado a inserir sua senha de usuário mysql/mariadb root
que você definiu na etapa anterior.
Enter password:
[2]- Done sudo mysqld_safe --skip-grant-tables
Agora, inicie o serviço mysql/mariadb normalmente usando o comando:
sudo systemctl start mysql
Para MariaDB:
sudo systemctl start mariadb
Verifique se a senha realmente foi alterada usando o seguinte comando:
sudo mysql -u root -p
E isso é tudo por agora. Espero que você ache isso útil.