You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过MySQL Workbench连接本地MySQL服务器求助

解决MySQL Workbench无法通过TCP/IP连接root用户的问题

核心问题分析

Windows 10环境下,MySQL刚安装完成时可通过Workbench以TCP/IP连接root用户,但系统重启后出现Access denied for user 'root'@'localhost' (using password: Yes)错误,而命令行仍能正常连接。这是因为Windows下命令行默认通过命名管道(对应root@localhost)连接,而Workbench用TCP/IP(对应root@127.0.0.1)连接,两者的权限条目是独立的,重置密码仅修改了root@localhost的配置,未覆盖TCP/IP连接的权限。

具体解决步骤

  1. 查看root用户的权限与认证插件
    登录MySQL命令行,执行以下SQL查询当前root用户的主机绑定和认证插件信息:
SELECT User, Host, plugin FROM mysql.user WHERE User = 'root';

重点关注是否存在Host='127.0.0.1'或Host='%'的条目,以及对应的插件类型(caching_sha2_password或mysql_native_password)。

  1. 添加/配置root用户的TCP/IP权限
    如果查询结果中没有root@127.0.0.1的条目,执行以下SQL创建该用户并授予全权限:
CREATE USER 'root'@'127.0.0.1' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' WITH GRANT OPTION;
FLUSH PRIVILEGES;

若已有该条目但密码或权限异常,直接修改密码:

ALTER USER 'root'@'127.0.0.1' IDENTIFIED BY '你的密码';
FLUSH PRIVILEGES;
  1. 调整认证插件以兼容Workbench
    MySQL 8.0+默认使用caching_sha2_password插件,部分旧版本Workbench可能存在兼容性问题。可将root@127.0.0.1的认证插件改为mysql_native_password:
ALTER USER 'root'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
  1. 验证MySQL配置文件
    打开MySQL的配置文件(通常为my.ini,位于MySQL安装目录的bin或my文件夹下),确认以下配置:
skip_networking = OFF
bind_address = *

修改后保存,重启MySQL服务(通过Windows服务管理器找到MySQL服务,右键选择“重启”)。

  1. 检查Workbench连接设置
    打开MySQL Workbench,确认连接配置:
  • 连接类型:TCP/IP
  • 主机名:127.0.0.1
  • 端口:3306
  • 用户名:root
  • 密码:输入对应root@127.0.0.1的密码
    确保未勾选“使用命名管道”或其他非TCP/IP相关选项。

内容的提问来源于stack exchange,提问作者Amin Parvaresh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 04:15:21