MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'

   忘记了MySQL的登录密码,在使用update user set password=password('123456') where user='root' and host='localhost';修改密码时提示:ERROR 1054 (42S22): Unknown column 'password' in 'field llist',经过查阅资料发现原来是mysql数据库下的password字段已经更改成了authentication_string了。

接下来把password字段改成authentication_string就可以了,完整的命令:update user set authentication=password('123456') where user='root' and host='localhost';


W8.1系统下忘记Mysql登录密码修改完整步骤如下:

1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第1张图片

2、打开任务管理器结束mysql.exe进程;打开cmd命令提示符,使用cd命令进入mysql.exe所在的文件夹;输入命令:mysqld --skip-grant-tables 按回车,此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的命令行。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第2张图片

 3、打开新的命令行工具进入到mysql.ext的目录下,直接输入mysql不需要带任何登录参数直接回车就可以登陆上数据库。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第3张图片

 4、输入show databases; 可以看到所有数据库说明成功登陆。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第4张图片

5、其中mysql库就是保存用户名的地方。输入 use mysql; 选择mysql数据库;然后使用show tables;查看所有表,会发现有个user表,这里存放的就是用户名、密码、权限等等账户信息。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第5张图片

6、输入select user,host,authentication from user; 来查看账户信息,然后输入:update user set authentication=password('123456') where user='root' and host='localhost';更改密码。

7、再次使用select user,host,authentication from user; 可以看到密码已被修改。

MySQL5.7修改密码时出现:ERROR 1054 (42S22): Unknown column 'password' in 'field llist'_第6张图片

8、使用exit退出mysql,重启mysql之后使用新的密码登录即可。

 

你可能感兴趣的:(Mysql)