mysql密码登录失败、服务启动失败和1045-Access denied for user ‘root‘@‘localhost‘

一、问题:

1.打开 navicate,双击localhost_3306,出现报错2002 - Can’t connect to server on ‘localhost’(10061)

在这里插入图片描述

2.查看mysql是否启动

控制面板——管理工具——服务
找到mysql服务,发现无法启动。
在这里插入图片描述

3.win+R运行cmd,输入mysql -u root -p,输入密码登陆失败。

4.输入net stop mysql/net start mysql 报错服务名失效。

在这里插入图片描述

二、解决

2.1 解决问题2和问题4,mysql启动问题和服务名无效问题:

1.找到MySQL的安装路径下bin

2.在命令行中输入mysqld --install,出现Service successfully install代表你已经安装成功。

3.执行 net start mysql。

4.删除mysql下的data文件。

5.执行 mysqld --initialize 可以在当前路径下生成data文件夹,再执行net start mysql 就可以启动mysql。

①要删除的data文件夹如下,删除前要备份:
在这里插入图片描述
②命令行界面中步骤如下(使用管理员身份操作):
在这里插入图片描述

③服务端mysql启动成功。
在这里插入图片描述

2.2 解决问题3,输入密码无法登录且报错2003

try1:使用免密登录。

参考:解决几种MYSQL登录失败,Root用户权限异常的问题
①在Mysql的配置文件中加入

skip-grant-tables

分析:skip-grant-tables会让MySQL服务器跳过验证步骤,允许所有用户以匿名的方式,无需做密码验证直接登陆MySQL服务器,并且拥有所有的操作权限。因此,无需进行无密登陆时,应把此行删除。
在这里插入图片描述
②重新启动mysql

net stop mysql 
net start mysql

③无密码进行登录,依旧报错2003

在这里插入图片描述

try2:执行mysqld -install。

参考:启动MySQL报错:ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)
首先,找到服务,确保MySQL启动。
然后,执行安装命令mysqld -install,由于本机中已经安装了mysql服务,所以有如下提示The service already exists!
最后,执行mysql -u root -p或者mysql -uroot -p,尝试免密或输入密码登录,失败。
在这里插入图片描述

try3:删除Data,再次初始化。

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

①找到mysql安装目录,将其配置文件my.ini移至bin目录下。
②删除原有的数据库。
2.1、查询SQL 服务是否存在:

sc query mysql (对应的SQL服务名称)如果存在则会弹出一些信息,不存在则提示未找到服务。

2.2、删除服务:

sc delete mysql(对应的SQL服务名称)执行该命令即可删除服务

在这里插入图片描述

③初始化数据(注:最后一行,root@localhost:后面的是你的随机登录密码,我的是:?k*P,0iGlz4*

mysqld --initialize --user=mysql --console

在这里插入图片描述

④在服务中启动mysql,cmd中输入mysql -uroot -p,输入随机密码,登陆成功。

在这里插入图片描述

注意:第四步原本登录失败,原因是在try1过程中在my.ini中添加的skip-grant-tables没有删除,删除后,输入随机初始化密码,登录成功。

⑤将随机密码,修改为自己的密码。(引号中为自定义密码)

use mysql;
ALTER USER USER() IDENTIFIED BY 'yourmima';
flush privileges;

在这里插入图片描述

三、问题1报错2002的延伸问题,报错1045 - Access denied for user ‘root’@‘localhost’ (using password: NO)

解决以上问题后,双击localhost_3306,出现报错1045 - Access denied for user ‘root’@‘localhost’ (using password: NO)

用户’root’@‘localhost’(使用密码:NO)拒绝访问,可能是因为密码错误,或者用户忘记密码。在经过步骤一二更改密码操作后,在navicat中输入新密码即可。

在这里插入图片描述

解决:编辑连接,输入新的密码,点击确定,连接成功,彻底解决!o( ̄▽ ̄)ブ

在这里插入图片描述
参考:navicat连接MySQL报错:1045 - Access denied for user ‘root‘@‘localhost‘ (using password: YES)

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值