MySQL 5.7版 解决密码登录失败Access denied for user 'root'@'localhost' (using password: NO)

来源:互联网 发布:java的annotation 编辑:程序博客网 时间:2024/06/05 07:11

最近要使用Mysql数据库,所以在网上下载了一个mysql数据库的免安装版,版本为5.7.17的。使用很方便简单!我也是通过网上查询很多资料,最终将这个问题解决了,所以在此感谢那些分享经验朋友!

1、正常步骤

解压到任意目录后,首先安装完成之后配置下MySQL环境变量!

右击我的电脑——>属性——>高级——环境变量,在path中配置一下mysql的环境(例如我的C:\Program Files\mysql-5.7.17-winx64\bin;)

配置完环境变量后,不要忙着启动mysql,我们还需要修改下mysql的配置文件my-default。
配置my-default

本接下来就是在DOC窗体中进行配置了!

1、由于配置了path环境变量,可以直接WIN+R调出CMD命令执行程序,如果没有配置的话,在Win7及以上系统,可以在MySQL目录下,按住Shift键选中bin目录,右键在此处打开命令窗口。

2、运行mysqld –initialize 命令,这时你的mysql所在目录下会自动生成一个data文件夹!

3、输入mysqld -install 提示 service successfully installed 。

4、输入net start mysql ,启动mysql服务。

5、输入mysql -u root -p 回车,让我们输入密码,因为之前版本的mysql都是没有初始密码的,直接回车就可以,不过现在不行了,不输入密码会报错!

2、解决问题

解决方式有修改或添加一个mysql的初始密码或用户!首先,我们要停止mysql服务!

1、停止mysql命令:net stop mysql就可以!

2、输入命令mysqld –skip-grant-tables 之后没有反应。就可以了,不过不要把窗体关了,我们另起一个doc窗体。同时也是用管理员运行!

3、我们在新打开的doc窗体中输入:mysql -u root ,我们就进入了mysql数据库。

4、在doc窗体中输入:update mysql.user set authentication_string=password(‘你的密码‘) where user=’root’ and Host = ‘localhost’;

*在这里’你的密码’设置成你自己想要的密码即可,特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了,而是将加密后的用户密码存储于authentication_string字段。

5、doc窗体中输入:flush privileges;(更新)

6、输入: quit;(退出)

7、重启电脑

8、打开doc窗体输入net start mysql,一般情况是已经启动了。

9、输入mysql -u root -p 提示你输入密码:此处输入你上面设置的密码即可

10、成功进入了mysql数据库!

3、Navicat 问题

在进行客户端Navicat Premium登录时,会报错的!
Navicat问题

所以我们还需要修改一下数据库。我们在doc窗体中输入:set password for ‘root’@’localhost’=password(‘你之前设置的密码‘);


感谢这篇文章链接.


0 0
原创粉丝点击