Como Alterar a Palavra-passe de Root no MySQL: Um Guia Passo a Passo para Administradores de Sistemas

Se queres saber como alterar a palavra-passe do utilizador root no MySQL em sistemas operativos Linux, FreeBSD, OpenBSD e outros semelhantes a UNIX via sessão SSH, estás no lugar certo! Neste artigo, vamos mostrar-te como garantir que o teu MySQL fique seguro com métodos simples e eficazes.

A Importância de Alterar a Palavra-passe do Root no MySQL
Alterar a palavra-passe de root do MySQL é uma das tarefas cruciais para a segurança da tua base de dados. Lembra-te: a conta root do sistema operativo Linux ou UNIX e a conta root do MySQL são distintas, ou seja, não estão relacionadas de nenhuma forma. Muitas vezes, por questões de segurança, pode ser útil desativar a conta root do MySQL e configurar um utilizador administrador com permissões elevadas.

Método #1: Alterar a Palavra-passe com o Comando mysqladmin

Atenção! Quando alteras a palavra-passe de root ou qualquer outra conta MySQL, deves estar ciente de que qualquer aplicação ou script (como shell, Perl, Python, PHP) que utilize a conta root precisa ser atualizado com a nova palavra-passe. Caso contrário, poderás sofrer interrupções nos teus serviços. O autor deste artigo e o site nixCraft não se responsabilizam por eventuais problemas decorrentes de configurações erradas.

Se nunca configuraste uma palavra-passe para a conta root no MySQL, o servidor estará acessível sem nenhuma palavra-passe. Para configurar a palavra-passe pela primeira vez, utiliza o comando mysqladmin da seguinte forma:

Bash
mysqladmin -u root password NOVAPALAVRAPASSE

Agora, se já tens uma palavra-passe configurada e queres alterá-la, usa o comando abaixo:

Bash
mysqladmin -u root -p'oldpassword' password novapalavrapasse

Também podes especificar o endereço do servidor com o comando a seguir:

Bash
mysqladmin -u root -h {IP_ou_Host} -p'oldpassword' password novapalavrapasse

Exemplo: Imagina que a tua palavra-passe antiga é “abc” e queres alterá-la para “123456”. O comando seria:

Bash
mysqladmin -u root -p'abc' password '123456'

Não te esqueças: escolhe sempre uma palavra-passe robusta e segura para proteger as transações no teu banco de dados MySQL.

Alteração Segura da Palavra-passe no MySQL

Para garantir que a tua palavra-passe não seja visível em comandos ou histórico do sistema, utiliza o seguinte comando:

Bash
mysqladmin -u root -p password

Atenção: O MySQL alerta que, ao enviar a palavra-passe em texto claro, ela pode estar exposta. Para garantir maior segurança, recomenda-se a utilização de uma ligação SSL.

Para isso, ao conectar-te a um servidor MySQL remoto, usa a opção --ssl-mode=REQUIRED:

Bash
mysqladmin --ssl-mode=VERIFY_CA -h {ip_servidor} -u root -p password

A opção --ssl-mode=REQUIRED força uma conexão criptografada com o servidor MySQL, e a opção --ssl-mode=VERIFY_CA ainda verifica o certificado da Autoridade Certificadora (CA).

Verificar se a Alteração da Palavra-passe Funcionou

Depois de alterar a palavra-passe, verifica se está a funcionar corretamente executando o seguinte comando:

Bash
mysql -u root -p'123456' nome_da_base_de_dados

Ou:

Bash
mysql -u root -p'123456' -e 'show databases;'

Método #2: Alterar a Palavra-passe Utilizando o Comando mysql

Outra forma de alterar a palavra-passe do utilizador root no MySQL é acessando diretamente a base de dados e atualizando o registo da tabela de utilizadores.

Primeiro, entra no MySQL:

Bash
mysql -u root -p

Depois, seleciona a base de dados do MySQL e visualiza os privilégios dos utilizadores:

Bash
use mysql;
SHOW GRANTS FOR 'root'@'localhost';

Para alterar a palavra-passe de root, usa o seguinte comando:

Para versões antigas do MySQL:

Bash
update user set password=PASSWORD("NOVAPALAVRAPASSE") where User='root';

Para versões mais recentes do MySQL (versão 8.x):

Bash
ALTER USER 'root'@'%' IDENTIFIED BY 'NOVAPALAVRAPASSE';

Finalmente, recarrega os privilégios para aplicar as mudanças:

Bash
flush privileges;
quit;

Conclusão: Garantindo a Segurança do Teu MySQL

Alterar a palavra-passe da conta root do MySQL é uma etapa fundamental para manter a segurança do teu servidor de base de dados. Como recomendação, configura o ficheiro .my.cnf para evitar teres de introduzir a palavra-passe sempre que acedes ao MySQL. Além disso, a utilização de uma ligação SSL criptografada é uma excelente prática para aumentar a proteção.

Lembra-te: sempre escolhe uma palavra-passe forte e mantém o teu sistema atualizado para evitar vulnerabilidades.

Dica Extra: Se queres uma forma ainda mais segura de armazenar as tuas credenciais, usa o comando mysql_config_editor para criar um ficheiro .mylogin.cnf que oculta a palavra-passe, melhorando a segurança das tuas ligações.

Agora que sabes como alterar a palavra-passe root no MySQL de forma segura, não há desculpas para não proteger o teu servidor de base de dados!

Artigos Relacionados