win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

时间:2024-04-10 17:27:37

说明下系统是win10,mysql版本是8.0.14

下载完mysql后,无论如何也无法登录进去,花了小半天时间才弄明白如何成功登录。

首先遇到了以下问题
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)

不输入密码的话会是这样
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
非常普遍但是对我来说并不适用的解决方案一(大家可以试试!)
从网上查了一下解决方案,几乎全网的解决方案都是要修改my.ini,在mysqld下面添加skip-grant-tables,保存退出。
就像这样
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
之后重启mysql服务:

在命令行输入net stop mysql 关闭mysql服务
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

再输入net start mysql 开启mysql服务
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
如果出现服务已经启动成功,那么恭喜你,你离成功近了一步。请继续往下看。

如果出现MySQL服务无法启动,服务没有报告任何错误,那就请继续往下看。

我尝试的大部分情况时出现服务已经启动成功,但是我发现我高兴得太早。

输入mysql -u root -p后,在需要密码时直接Enter就好了,因为之前加的那句话意思是跳过密码。

到此步如果成功进入了,就不用往下看了,恭喜你们。

然而我遇到了下一个ERROR:
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

ERROR 2003 (HY000):Can’t connect to MySQL server on ‘localhost’ (10061)

从网上查了下,发现是因为服务没有开启。诶?我不是明明成功开启了吗?

于是我又打算关闭服务,重新开启。

然而得到了如下反馈。
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

尝试多次后,我发现每次都是服务开启一小会儿就自动关了。有时甚至直接开启不了。

好像这是MySQL 8.0 后版本的一种安全措施,所以之前的方法可能不适用了。

此时我打开了安装路径下的data文件夹
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

找到里面以err结尾的文件win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
发现这里面有两行ERROR
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
[ERROR] [MY-010131] [Server] TCP/IP, --shared-memory, or --named-pipe should be configured on NT OS

[ERROR] [MY-010119] [Server] Aborting

[Warning] [MY-011311] [Server] Plugin mysqlx reported: 'All I/O interfaces are disabled, X Protocol won’t be accessible’

之后我尝试着把刚才在my.ini添加的skip-grant-tables注释掉win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

再重启MySQL服务。

诶?一切又回到起点。
回到了
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)

而我在输入密码时随手输入几个字母,也是这个报错。

我突然发现,是因为我密码错了。可是我是记住的initialize时的密码。
对,这种奇怪的密码。
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)

此时网上的一种解决方案是,依旧点开.err后缀的那个文件,里面查找password,能看到密码。但是我的找不到这条。

后来我把initialize时的密码输入到文档里,直接复制粘贴到命令行,虽然此时命令行没有任何显示,但是输入回车,就成功了!

成功之后第一件事就是改掉这个奇怪的密码。
win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
使用的是
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘密码’

记住一定要加分号。

之后就用自己的密码登录就好啦!

附:获取initialize密码的方法。
仅适用于刚刚安装mysql的同学们!!!
打开你的安装路径,看里面有没有data文件夹。
有的话,把它删掉。

win10下载安装 MySQL8.0时遇到的问题解决ERROR2003(HY000)及ERROR1045(28000)
之后在命令行输入
mysqld --initialize --console

会出一大片东西,其中有一行有以下信息

2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: APWCY5ws&hjQ

后面那串字符就是你的initialize的密码。

到这儿就结束啦!
第一次在CSDN上写文章,废话有点多。
感觉兜兜转转又回到起点,不知道会不会有人和我遇到一样的问题。
如果这篇文章有帮助到你,可以留言哈。

附上我的参考网页

  1. MySQL下载安装步骤
  2. 从.err文件里找密码