用于重置密码的 Mysql 数据库的简单查询如何
我有我的示例代码,但它不起作用,我不知道如何使它工作
SELECT `User`, `Host`, Length(`Password`) FROM mysql.user
UPDATE mysql.user SET Password = PASSWORD('password') WHERE user = 'username';
它不起作用。
尝试这个:
SET PASSWORD FOR 'USER'@'HOST' = PASSWORD('PASSWORD');
或者,如果您想直接更新表,请不要忘记刷新权限。
UPDATE mysql.user SET Password = PASSWORD('PASSWORD')
WHERE user = 'USERNAME' AND Host='HOST';
FLUSH PRIVILEGES;
最后,还有第三种使用 GRANT 的方法:
GRANT USAGE ON *.* TO 'USER'@'HOST' IDENTIFIED BY 'PASSWORD';
参考:MySQL 5.7 手册
您无需选择;只更新。
update mysql.user set password=PASSWORD("NEW-PASSWORD-HERE") where User='USER';
您的问题可能源于您的 select 语句后缺少分号。