usuarios - Cambiar la contraseña del usuario mysql usando la línea de comando
cambiar de usuario mysql consola (7)
A partir de MySQL 5.7.6, use ALTER USER
SET PASSWORD ... = PASSWORD(''auth_string'')
sintaxis está en desuso a partir de MySQL 5.7.6 y se eliminará en una futura versión de MySQL.
SET PASSWORD ... = ''auth_string''
sintaxis SET PASSWORD ... = ''auth_string''
no está en desuso, pero ALTER USER
es ahora la declaración preferida para asignar contraseñas. Por ejemplo:
ALTER USER user IDENTIFIED BY ''auth_string'';
Usando el ejemplo del asker:
ALTER USER ''tate256'' IDENTIFIED BY ''$w0rdf1sh'';
Estoy intentando actualizar la contraseña para un usuario de base de datos usando la línea de comando, y no funciona para mí. Este es el código que estoy usando:
mysql> UPDATE user SET password=PASSWORD($w0rdf1sh) WHERE user=''tate256'';
¿Podría alguien decirme qué pasa con este código?
Su raíz de inicio de sesión debe ser /usr/local/directadmin/conf/mysql.conf
. Entonces intenta seguir
UPDATE mysql.user SET password=PASSWORD(''$w0rdf1sh'') WHERE user=''tate256'' AND Host=''10.10.2.30'';
FLUSH PRIVILEGES;
Host es tu host de mysql.
En tu código, intenta incluir la contraseña dentro de comillas simples. Alternativamente, según la documentación de mysql, el siguiente debería funcionar:
SET PASSWORD FOR ''jeffrey''@''localhost'' = PASSWORD(''cleartext password'');
FLUSH PRIVILEGES;
La última línea es importante o, de lo contrario, su cambio de contraseña no tendrá efecto por desgracia.
EDITAR -
Ejecuté una prueba en mi local y funcionó -
mysql> set password for ''test'' = PASSWORD(''$w0rdf1sh'');
Query OK, 0 rows affected (0.00 sec)
El mío es la versión 5. Puede usar el siguiente comando para determinar su versión:
SHOW VARIABLES LIKE "%version%";
Antes de MySQL 5.7.6 esto funciona desde la línea de comando:
mysql -e "SET PASSWORD FOR ''root''@''localhost'' = PASSWORD(''$w0rdf1sh'');"
No tengo una instalación de MySQL para probar, pero creo que en su caso sería
mysql -e "UPDATE mysql.user SET Password=PASSWORD(''$w0rdf1sh'') WHERE User=''tate256'';"
esta es la respuesta actualizada para WAMP v3.0.6
ACTUALIZACIÓN mysql.user SET authentication_string = PASSWORD (''MyNewPass'') WHERE user = ''root'';
FLUSH PRIVILEGES;
Nota: debe iniciar sesión como usuario raíz
SET PASSWORD FOR ''root''@''localhost'' = PASSWORD(''your password'');
En Windows 10, simplemente salga del inicio de sesión actual y ejecútelo en la línea de comando
-> mysqladmin -u root password “newpassword”
donde en lugar de root podría haber cualquier usuario.