Hoje vamos falar sobre como alterar a senha de usuários no MySQL
Utilizaremos 2 métodos, 1 – mysqladmin, 2 – linguagem SQL
Este é um video com o passo a passo utilizado neste post:
1. mysqladmin:
A sintaxe do comando e simples:
mysqladmin -u USER -p password NEWPASSWORD
vamos então alterar o password do usuário ‘marcelo’ para ‘123’
mysqladmin -u marcelo -p password '123'
existem 3 inconvenientes de utilizar este comando para alterar o usuário:
. você poderá somente alterar seu próprio usuário
. você precisa de SUPER PRIVILEGIOS para executar este comando
. caso você compartilhe a conta de usuário com outros users, você logara este comando no histórico, para isso podemos editar o ~/.bash_history e deletar as linhas onde o password e exibido.
2. Linguagem SQL (minha preferida):
para alterar a senha, vamos simplesmente dar um update na tabela de usuários do banco de dados mysql, este comando tem duas variações, ambas tem o mesmo resultado
SET PASSWORD FOR 'user'@'host' = PASSWORD('newpass');
ou
UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='user' AND Host='host';
depois de rodar o comando acima, devemos rodar um FLUSH PRIVILEGES para que o mysql releia a tabela de usuários, fazendo assim valer a senha nova
Vamos alterar a senha do usuário ‘marcelo’ para ‘123’
UPDATE mysql.user SET Password=PASSWORD('123') WHERE User='marcelo' AND Host='localhost'; FLUSH PRIVILEGES;
Se você estive utilizando o programa proprietário do mysql, você também terá o mesmo problema do mysqladmin, o histórico, para esconder o comando que você rodou e possui a senha legível para humanos, basta você deletar esta linha em ~/.mysql_history
Isso aew pessoal, espero que gostem, em caso de duvidas, comentem!