MySQL 登录报错排查:1045、2003 错误,新手快速解决

📅 2026/7/13 10:13:00 👁️ 阅读次数 📝 编程学习
MySQL 登录报错排查:1045、2003 错误,新手快速解决

前言

学 MySQL 必遇两大经典报错:

1045 拒绝访问2003 无法连接,新手看不懂报错信息,无从下手。

本篇一次性讲透原因 + 解决方案,照着排查立马修好。


一、错误 1045 Access denied for user

常见原因

  1. 用户名 / 密码输错
  2. 允许登录的主机不是localhost/%;
  3. 密码过期、权限不足

解决方案

  1. 确认账号密码是否正确;
  2. 重置 root 密码(Windows/Linux 都适用);
  3. 授权远程访问:

sql

CREATE USER 'root'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES;

二、错误 2003 Can't connect to MySQL server

常见原因

  1. MySQL 服务没启动
  2. 3306 端口被占用
  3. 防火墙拦截
  4. 绑定了仅本地 127.0.0.1

解决方案

  1. 检查 MySQL 服务是否启动,重启服务;
  2. 查看 3306 端口占用,更换端口或关闭占用程序;
  3. 关闭系统防火墙 / 放行 3306 端口;
  4. 修改配置文件注释bind-address=127.0.0.1

三、其他常见小报错

  1. 提示不存在 mysql 服务 → 未安装系统服务,重新执行mysqld --install
  2. 中文乱码 → 配置文件改成utf8mb4
  3. 连接超时 → 调整wait_timeout参数

四、排查通用思路

先看服务是否启动 → 再看端口 → 再看防火墙 → 最后看账号权限和密码。