首页 > 数据库技术 > 详细

mysql5.7报Access denied for xxx@localhost 的解决

时间:2018-10-14 01:06:05      阅读:612      评论:0      收藏:0      [点我收藏+]

使用root用户登录mysql数据库若如下报错

ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)

我使用的是阿里云新出的轻量应用服务器,选择的预装应用为 LAMP6.1.0,数据库是mysql5.7

解决方案:

在终端A 进入root用户:

1.执行命令   systemctl stop mysqld     停止mysql服务

2.找到你的mysql命令路径   mysqld_safe --skip-grant-tables   (注意:执行后会卡在终端A上)

在终端B 也进入root用户:

3.找到你的mysql命令路径,直接   mysql     就可以进入数据库了

4.在mysql执行命令    use mysql;  切换进入mysql这个数据库

5.在数据库mysql内,执行命令  

update user set authentication_string=password("123456") where User="root" and Host = "localhost";

更改root密码为123456,注意authentication_string 是我5.7版的密码字段,有些同学的mysql的密码字段可能仍是password,究竟是哪个请 select columns from user; 查一下。并且我5.7版的user表是双键User和Host,所以必须同时where两个字段否则报错;而有些同学的可以不用Host这个字段所以你可以试一下。因此下面是网上比较流传的版本:

 update user set password=password("123456") where user="root"; 

6.在mysql执行命令   flush privileges;  使配置参数生效

7.退出数据库  exit;  or   quit; 

8. systemctl restart mysqld  启动数据库

9.你就可以使用root 123456登录数据库啦!!!

mysql5.7报Access denied for xxx@localhost 的解决

原文:https://www.cnblogs.com/errorplayer/p/9784804.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!