在mysql5.7版本中,mysql.user表中的“密码”字段由原本的“password”改成了现在的"authentication_string",所以刚开始修改root的密码时,语句改为:
update mysql.user set authentication_string='你的密码' where user='root';
这样就完了吗?
然而并不是,这样改完之后,你会发现再登录,情况还是和之前一样,因为在mysql.user表里有个plugin的字段,root这个用户的值是auth_socket, 需要把它改成mysql_native_password:
update mysql.user set plugin="mysql_native_password";
然后
flush privileges;
quit;
再登录进行测试就可以了!