在安装完毕mysql 5.7 之后,设置登录权限时,报错,错误代码如下。
错误代码:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
原因是:mysql在设置登录的时候没有给root用户在localhost下登录的权限
解决办法
因为这个时候我们登录到mysql时,总会报错,所以我们需要设置成无密码登录。
设置无密码登录参考:centos中mysql忘记root密码详细解决方法 中的第1-5步。
此时,查看用户权限:select User,authentication_string,Host from user;
发现此时用户表中多了一条记录,此时,password可能为空,但是对我们接下来的操作没有影响。
执行命令:update mysql.user set authentication_string=password('123456') where user='root' and host='localhost';
其中password对应的123456为用户登录密码。
修改完,通过:flush privileges; 更新权限列表,将更改的权限保存。
退出mysql:exit;
删除无密码登录时添加的参数,重启mysql,就可以登录了。
文章评论