I\'m trying to update the password for a database user using the command line, and it\'s not working for me. This is the code I\'m using:
mysql> UPDATE user S
In your code, try enclosing password inside single quote. Alternatively, as per the documentation of mysql, following should work -
SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('cleartext password');
FLUSH PRIVILEGES;
The last line is important or else your password change won't take effect unfortunately.
EDIT:
I ran a test in my local and it worked -
mysql> set password for 'test' = PASSWORD('$w0rdf1sh');
Query OK, 0 rows affected (0.00 sec)
Mine is version 5. You can use following command to determine your version -
SHOW VARIABLES LIKE "%version%";
Your login root should be /usr/local/directadmin/conf/mysql.conf
. Then try following
UPDATE mysql.user SET password=PASSWORD('$w0rdf1sh') WHERE user='tate256' AND Host='10.10.2.30';
FLUSH PRIVILEGES;
Host is your mysql host.
ALTER USER
Example:
ALTER USER 'username' IDENTIFIED BY 'password';
Because:
SET PASSWORD ... = PASSWORD('auth_string')
syntax is deprecated as of MySQL 5.7.6 and will be removed in a future MySQL release.
SET PASSWORD ... = 'auth_string'
syntax is not deprecated, but ALTER USER
is now the preferred statement for assigning passwords.