答案是检查用户名密码、重置密码或调整用户权限。先确认登录信息是否正确,若遗忘密码则通过停止MySQL服务并启动安全模式(–skip-grant-tables)重置;登录后使用ALTER USER修改密码并刷新权限;检查mysql.user表中root用户的Host值是否匹配连接方式,必要时创建对应用户或修改Host;确保MySQL服务正常运行且端口无冲突;操作完成后重启服务并移除跳过权限验证的配置以保障安全。

登录 MySQL 时出现错误 1045,通常提示为 ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES/NO),这表示用户名或密码不正确,或者权限配置有问题。下面介绍几种常见解决方法。
检查用户名和密码是否正确
确保输入的用户名和密码准确无误:
确认是否使用了正确的用户名(如 root 或其他自定义用户) 检查密码是否输入错误,注意大小写和特殊字符 如果忘记密码,不要直接尝试多次登录,避免账户被临时锁定
重置 MySQL root 密码
如果你确定密码错误或已遗忘,可以进入安全模式重置密码:
步骤如下(以 Linux 或 Windows 管理员身份操作):停止 MySQL 服务:
Linux: sudo systemctl stop mysql
Windows: 在服务管理器中停止 MySQL 服务 启动 MySQL 安全模式(跳过权限验证):
运行命令:mysqld –skip-grant-tables –shared-memory(Windows)
或在配置文件中添加 skip-grant-tables 后启动 打开新终端,登录 MySQL(无需密码):
mysql -u root 修改密码(MySQL 8.0+ 语法):
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘你的新密码’;
如果使用旧版本,可能需要更新 mysql.user 表 刷新权限并重启 MySQL:
执行 FLUSH PRIVILEGES;,然后正常重启服务
检查用户连接权限
有时用户只能从特定主机登录,比如 ‘root’@’127.0.0.1’ 无法通过 ‘root’@’localhost’ 登录:
动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
508 查看详情
登录后可查看用户权限:SELECT User, Host FROM mysql.user; 若需允许远程或其他方式登录,可创建新用户或修改 Host 字段 例如添加用户允许本地登录:CREATE USER ‘root’@’localhost’ IDENTIFIED BY ‘密码’;
确认 MySQL 服务正常运行
错误 1045 有时是由于客户端连接到了错误的服务实例或服务未完全启动:
确认 MySQL 正在运行 检查端口(默认 3306)是否被占用或防火墙拦截 使用 netstat -an | grep 3306 查看监听状态
基本上就这些。重点是先判断是密码问题还是权限/配置问题,再选择重置密码或调整用户权限。操作时注意版本差异,尤其是 MySQL 8.0 之后的认证机制变化。处理完成后记得移除 skip-grant-tables 配置,保障数据库安全。
以上就是登录mysql错误1045解决方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/910921.html
微信扫一扫
支付宝扫一扫