首先打开mySQL安装目录下的my.ini配置文件,在[mysqld]字段下方加入:
skip-grant-tables
然后保存
然后,以管理员身份进入cmd,输入如下命令:
net stop mysql
net start mysql
进入MySQL数据库
进到mysql安装目录的bin目录下,然后进入mysql
mysql -u root -p
更新mysql数据库中的user表的root用户的密码
use mysql;
update user set authentication_string=PASSWORD('root') where user='root';
flush privileges;
退出mysql
exit
再次重启mysql服务,输入新密码进入
注意点:
在网上常见的修改密码的语句是
update user set password=password('root') WHERE User='root';
但我这里报错了,报错内容:
ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’
这是因为MySQL5.7已经没有password这一列了。
https://blog.csdn.net/m0_38072683/article/details/113003607
查看user表的所有字段:
select CONCAT(COLUMN_NAME ,',') from information_schema.COLUMNS where table_name = 'user';
修改authentication_string即可:
update user set authentication_string=PASSWORD('root') where user='root';