记录ERROR 1045 (28000): Access denied for user ‘XXX‘@‘localhost‘ (using password: YES)解决方法

本文指导读者在Windows环境中,面对Mysql和Mysql80版本冲突时,如何通过停止非目标版本服务、以管理员身份启动并连接MySQL,解决ERROR 1045 (28000) Access denied问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

仅个人问题做记录
cmd界面连接Mysql数据库报错ERROR 1045 (28000): Access denied for user ‘XXX’@‘localhost’ (using password: YES)
是有多个版本mysql且占用着端口号
从我的电脑进入管理界面,发现有Mysq和Mysql80(开始创建的)两个,当时Mysql正在运行
在这里插入图片描述
点击mysql然后停止服务
然后cmd界面输入net start 你想启动的服务(建议以管理员身份运行,如果没有配置环境应该还需要去到bin目录操作)
在这里插入图片描述
然后就可以连接登录了

<think>好的,用户遇到了MySQL登录时的ERROR 1045问题,需要解决方案。首先,我需要回忆相关的知识,并结合提供的引用内容来整理回答。 首先,根据引用内容,错误原因是密码问题,可能被篡改或忘记。解决方法包括重置密码和检查权限。我需要分步骤说明,确保用户能一步步操作。 接下来,考虑用户可能的操作环境,比如是否记得密码,是否有权限停止MySQL服务等。不同的情况需要不同的处理方式,比如跳过授权表来重置密码,或者修改用户权限。 还要注意安全模式下的步骤,比如使用`UPDATE`语句修改密码后需要刷新权限,并重启服务。同时,要提醒用户更新密码的命令在不同MySQL版本中的差异,比如`FLUSH PRIVILEGES`的位置。 另外,引用中提到的方法可能涉及配置文件修改,需要指导用户如何找到`my.cnf`或`my.ini`,并警告在修改配置时要小心,避免引入其他问题。 最后,生成的相关问题要涵盖常见原因、重置密码步骤、安全模式的使用、权限检查和预防措施,这样用户如果有其他疑问也能找到答案。 需要确保回答结构清晰,步骤详细,并且语言通俗易懂,避免使用过于专业的术语,让用户容易跟随操作。同时,引用标识要正确对应到参考资料,确保信息的可靠性。</think>### MySQL ERROR 1045 问题解决方案 当MySQL出现`ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)`时,通常是由于密码错误、权限配置问题或密码被篡改导致的。以下是逐步解决方法--- #### **步骤1:确认密码是否正确** 1. 检查输入的密码是否包含大小写错误或特殊字符。 2. 尝试使用无密码登录:`mysql -u root -p`,直接按回车键跳过密码输入。 - 若成功登录,说明原密码已被篡改或未设置,需重置密码[^3]。 --- #### **步骤2:通过安全模式重置密码** 1. **停止MySQL服务**: ```bash sudo systemctl stop mysql # Linux # 或在Windows服务管理器中停止MySQL ``` 2. **启动MySQL跳过权限验证**: ```bash mysqld_safe --skip-grant-tables & ``` 3. **登录MySQL并重置密码**: ```sql mysql -u root # 无密码登录 UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES; -- 刷新权限 exit; ``` 4. **重启MySQL服务**: ```bash sudo systemctl restart mysql ``` --- #### **步骤3:检查用户权限** 若密码正确但仍无法登录,可能是用户权限问题: ```sql -- 检查root用户权限(需管理员权限执行) SELECT Host, User FROM mysql.user WHERE User='root'; -- 确保存在'root'@'localhost'条目,若无则创建: GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '新密码' WITH GRANT OPTION; FLUSH PRIVILEGES; ``` --- #### **步骤4:修复配置文件(可选)** 如果错误由配置文件引起: 1. 检查`my.cnf`或`my.ini`中是否包含错误的密码配置。 2. 移除或注释类似`password=xxx`的配置项。 --- #### **注意事项** - **MySQL 8.0+版本**:需使用`ALTER USER`重置密码: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; ``` - **数据安全**:重置密码后建议更新所有依赖此密码的应用配置。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值