由于在mysql5.7下的user表中已经没有Password字段了,而是将加密后的用户密码存储于authentication_string字段。
第一步:
打开第一个cmd窗口,切换到mysql的bin目录,运行命令:
mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables;
该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。
第二步:
打开第二个cmd窗口,连接mysql:
输入命令:
mysql -uroot -p
出现:
Enter password:
在这里直接回车,不用输入密码。
第三步:
use mysql;
update mysql.user set authentication_string=password('mysql') where user='root' and Host = 'localhost';
使用该语句更改root密码。
第四步:
刷新权限:
FLUSH PRIVILEGES;
然后退出,重新登录:
完成修改。
来源:https://www.cnblogs.com/microsoftjava/p/6015140.html