ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)解决办法

ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)解决办法问题:ERROR1045(28000):Accessdeniedforuser‘root’@‘localhost’(usingpassword:NO)很久没用这台电脑的mysql了,今天需要连接数据库,启动数据库报错:ERROR1045(28000):Accessdeniedforuser‘root’@‘localhost’(usingpassword:NO)解决方法:查阅资料后知道了,应该使用已知的用户名和密码登陆mysql-uroot-p然而密

大家好,又见面了,我是你们的朋友全栈君。

2021年12月20日。本文可收藏可转载可抄袭,但是麻烦抄袭的时候抄全点,别删的不成样子,让人瞎踩坑,这是在害人。我的博客大多比较详细,也可以说是啰嗦,因为用CSDN的大多是小白,将心比心,想想自己当初被垃圾博客搞得焦头烂额的时候。


2021年11月25日修改,标示打开的CMD窗口次序。


问题:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)

很久没用这台电脑的mysql了,今天需要连接数据库,启动数据库报错:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
在这里插入图片描述

解决方法:

查阅资料后知道了,应该使用已知的用户名和密码登陆

mysql -u root -p

然而密码忘了,试了好几遍终于试出来了:
在这里插入图片描述
然后修改成通用的密码,不乱折腾了:
在这里插入图片描述
发现很多教程都过时了,我的版本是Server version: 8.0.19 MySQL ,最新的方法:
在这里插入图片描述

mysql> use mysql;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
mysql> flush privileges;

退出验证下看看有没有成功:
在这里插入图片描述

可以看到修改密码成功了。

然后呢,我又假装密码忘了,把忘记密码的修改密码方法演示一下:

第一步:关闭Mysql服务

首先先停止mysql服务。可通过net stop mysql或者任务管理器中关闭。
在这里插入图片描述
管理员权限操作:(这是第一个窗口
在这里插入图片描述

第二步:跳过Mysql密码验证

进入命令提示符(管理员登陆)操作,进入mysql目录中bin文件夹下,mysql8.0与其他版本不同的地方在于无法直接使用mysqld –skip-grant-tables来跳过密码登录。在这我们使用mysqld -console --skip-grant-tables --shared-memory来跳过权限验证。

在这里插入图片描述
输入执行后没有反馈,新开一个管理员窗口重新执行。(这是第二个窗口

进入目录后,确保自己已经关闭了Mysql的服务:net stop mysql
在这里插入图片描述
关闭Mysql服务之后,继续在D:\mysql-8.0.19-winx64\bin目录下进行操作:
输入

mysqld --console --skip-grant-tables --shared-memory 

在输入这行代码之后,如下显示,我们就已经成功跳过Mysql的密码登录了:
在这里插入图片描述

第三步:无密码方式进入Mysql

在上述步骤之后,再打开一个管理员模式运行的cmd.exe (这是第三个窗口

进入mysql下的bin目录后,直接登录mysql

不需要通过net start mysql打开mysql服务

在命令行中输入以下代码

d:
cd D:\mysql-8.0.19-winx64\bin(此处输入自己电脑上的安装目录)
mysql -u root -p

如图:
在这里插入图片描述

此时会显示让你输入密码,直接回车,就可以成功连接Mysql。
在这里插入图片描述

第四步:将登陆密码设置为空

输入代码,将密码设置为空(此时还不能直接修改密码,必须先设置为空,否则会报错
输入:

use mysql; (使用mysql数据表)
update user set authentication_string='' where user='root';(将密码置为空)
quit; (然后退出Mysql)

操作如图:
在这里插入图片描述

第五步:更改自己的登陆密码

这里分为两个部分

1.关闭前两个cmd窗口(一定要关闭!);

2.在第三个窗口中输入代码;

net stop mysql(关闭mysql服务,虽然会显示没有开启服务,但是以防万一)
net start mysql(再打开mysql服务)

(这里不要嫌麻烦,如果上一个mysql服务没关闭,我们依旧是无密码登陆)

操作如图:
在这里插入图片描述
接着输入:

cd D:\mysql-8.0.19-winx64\bin  (此处输入自己电脑上的安装目录)
mysql -u root -p
(此处会显示输入密码,直接回车就好了,第四步我们已经将他置为空了)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';(更改密码)

如图:
在这里插入图片描述

最后一步:验证密码是否修改成功

输入:

quit(退出mysql)
mysql -u root -p 
(输入新密码,再次登录)

图示:
在这里插入图片描述
成功!

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131782.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • seq2seq模型是什么_seq2seq原理

    seq2seq模型是什么_seq2seq原理1seq2seq模型简介seq2seq模型是一种基于【encoder-decoder】(编码器-解码器)框架的神经网络模型,广泛应用于自然语言翻译、人机对话等领域。目前,【seq2seq+attention】(注意力机制)已被学者拓展到各个领域。seq2seq于2014年被提出,注意力机制于2015年被提出,两者于2017年进入火热融合和拓展阶段。通常,编码器和解码器都是一个LSTM网络…

  • MFRC522问题[通俗易懂]

    以前调试一直正常,最近重新使用新模块发现居然不能选卡,寻卡防冲撞都正常。一直折腾了两三天,最后更改复位延时直接解决问题。///////////////////////////////////////////////////////////////////////功能:复位RC522//返回:成功返回MI_OK///////////////////////////////…

  • IDEA中使用Git拉取代码时报 Git pull failed原因及处理方法

    IDEA中使用Git拉取代码时报 Git pull failed原因及处理方法

  • Java获取的一天、本星期、这个月、本季度、一年等 开始和结束时间

    Java获取的一天、本星期、这个月、本季度、一年等 开始和结束时间

  • Java 实现一个单例模式_Java实现单例模式的两种方式

    Java 实现一个单例模式_Java实现单例模式的两种方式单例模式在实际开发中有很多的用途,比如我们在项目中常用的工具类,数据库等资源的连接类。这样做的好处是避免创建多个对象,占用内存资源,自始自终在内存中只有一个对象为我们服务。单例对象一般有两种实现方式。懒汉式和饿汉式。饿汉式实现如下:packagecom.day05;/***饿汉式**@authorAdministrator**/publicclassSingle{//定义一个个私有静态本类对…

  • qmake:配置qmake

    qmake:配置qmake一、属性qmake有一个持久化配置系统,它允许在qmake中设置一次属性,并在每次调用qmake时查询它。可以在qmake中设置一个属性:qmake-setPROPERTYVALUE您可以从qmake检索此信息,如下所示:qmake-queryPROPERTYqmake-query//列出内置属性以下是内置属性:QMAKE_SPEC:在主机构建期间解析并存储在QMAKESPEC变量中的主机mkspec的短名称

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号