MYSQL连接问题 Access denied for user 'root'@'localhost' (using password:YES)

我是用mysql workbench连接MYSQL数据库,hostname为我本机ip的时候,出现问题:Access denied for user 'root'@'localhost'(using password:YES)。

百度了一下找到了下面这个博主的文章,然后根据自己这边具体情况,结合评论区一些建议做了修改,亲测可用

先说一下,我是win7,MySql Server 5.7

---------------------
作者:jack__love
来源:优快云
原文:https://blog.youkuaiyun.com/jack__love/article/details/79019049
版权声明:本文为博主原创文章,转载请附上博文链接!

        经查找资料发现是root帐户默认不开放远程访问权限,所以需要修改一下相关权限。

      解决方案:

  1.     打开MySQL目录下的my.ini文件,在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。(WIN7默认安装,my.ini在C:\ProgramData\MySQL\MySQL Server 5.6)

  2.     重启MySQL服务。

  3.     通过命令行进入MySQL的BIN目录,输入“mysql -u root -p”(不输入密码),提示输入密码不用管,直接Enter回车即可进入数据库。(WIN7默认安装,BIN目录为:(不一定是C,看你mysql装哪个盘)C:\Program Files\MySQL\MySQL Server 5.6\bin)                                                    【这一步原博评论区很多人反馈说报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO),我也遇到了,发现是mysql服务没有正确重启,去windows开始菜单搜索“服务”,然后点进去把mysql服务重启一下,就可以了】

  4.     执行“use mysql;”,使用mysql数据库。

  5.     执行“update user set password=PASSWORD("123456") where user='root';”(修改root的密码)                                                                                                                                                                                                               【5.7的可以试试这个,也是原博评论里翻到的建议 update user set authentication_string=PASSWORD("123456") where user='root';然后8.0以后的用这个  ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';】

  6.     打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。

  7.     重启MySQL服务。

  8.     在命令行中输入“mysql -u root -p 123456”,即可成功连接数据库。

      完成以上步骤,即可成功连接MySQL。
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值