编辑MysqL的配置文件/etc/MysqL/my.cnf,在[MysqLd]段下加入一行“skip-grant-tables”。
重启MysqL服务
yxj @yxj:~$ sudo service MysqL restart
yxj @yxj:~$ MysqL
Welcome to the MysqL monitor. Commands end with ; or \g.
MysqL> use MysqL
Database changed
执行update MysqL.user set authentication_string=password('123qwe') where user='root' and Host ='localhost';把密码重置为123456。退出数据库管理。
MysqL> update MysqL.user set authentication_string=password('123qwe') where user='root' and Host ='localhost';
Query OK,0 rows affected (0.00 sec)
Rows matched: 4 Changed: 0 Warnings: 0
MysqL>update user set plugin="MysqL_native_password"; MysqL>flush privileges; MysqL>quit;
回到sudo gedit /etc/MysqL/MysqL.conf.d/MysqLd.cnf,把刚才加入的那一行“skip-grant-tables”注释或删除掉。
再次重启MysqL服务sudo service MysqL restart,使用新的密码登陆,修改成功。
yxj @yxj:~$ MysqL -uroot -pnew_pass
Welcome to the MysqL monitor. Commands end with ; or \g.
MysqL>
MysqL>MysqL -u root -p 再次登录
原文链接:https://www.f2er.com/ubuntu/355674.html