解决 Trae MySQL MCP 连接失败(Fail to start)

解决 Trae MySQL MCP 连接失败:从 ENOENT 到认证兼容的全链路实战

在使用 Trae 工具远程访问内网 MySQL 数据库时,我遇到了从本地启动失败到认证兼容报错的一系列问题。经过逐步排查,最终通过本地命令映射+环境变量注入的方式完美解决,现将完整方案分享给大家。

一、问题背景

Trae 作为开发常用工具,支持通过 MCP 插件连接各类中间件。我在配置 MySQL MCP 时,先后遇到两个核心报错:

  1. 启动时报错 spawn uvx ENOENT,本地 MCP 服务无法启动;

  2. 解决启动问题后,出现 Request timed out (-32001) 连接超时,而同一网络环境下 MySQL Workbench 可正常连接Trae Redis MCP 可正常使用

环境信息:

  • 系统:Windows 11

  • MySQL 版本:8.xxx(默认认证插件 caching_sha2_password

  • 网络:VPN 远程访问内网数据库

二、核心问题定位

1. uvx ENOENT 根源:Windows 系统命令后缀兼容缺陷

trae输出日志:

info\] \[mcp.config.usrlocalmcp.MySQL\] MCPServerManager#start Connecting with config... {"command":"uvx","args":\["--from","mysql-mcp-server","mysql_mcp_server"\],"env":.................. ...... \[error\] \[mcp.config.usrlocalmcp.MySQL\] MCPClient#onError 发生了系统错误 (spawn uvx ENOENT) MySQL MCP 依赖 `uvx` 命令启动,但 Windows 系统执行可执行文件时**必须带** **`.exe`** **后缀** ,而 Trae 配置中直接调用 `uvx`,导致系统无法识别对应的 `uvx.exe` 文件。 更关键的是,MCP 配置界面为只读状态,无法修改 `command` 配置项,本地配置文件要么是二进制格式,要么路径隐藏,无法直接编辑。 #### 2. `Request timed out` 根源:MySQL 8.x 认证插件不兼容 排除 VPN 网络、端口白名单、账号密码等因素后(Workbench 可正常连接),定位到核心矛盾: * MySQL 8.x 默认认证插件为 `caching_sha2_password`; * MySQL MCP 默认使用旧版插件 `mysql_native_password`; * 且 Trae 未开放认证插件配置入口,普通账号无权限修改 MySQL 服务端账号的认证插件。 ### 三、分步解决方案 #### 步骤 1:创建 `uvx.cmd` 映射文件,解决本地启动问题 通过创建批处理文件,让系统执行 `uvx` 命令时自动调用 `uvx.exe`,绕开 Trae 配置限制。 1. 找到 `uvx.exe` 所在路径(可从 Trae 日志中提取): `C:\Users\你的用户名\.trae-cn\tools\uv\latest` 2. 在该文件夹下**新建文本文档** ,重命名为 `uvx.cmd`(需显示文件扩展名); 3. 编辑 `uvx.cmd`,写入以下内容并保存: ```bash @echo off "%~dp0uvx.exe" %* ``` 4. 彻底关闭 Trae(任务管理器结束进程),重新启动,`ENOENT` 报错消失。 #### 步骤 2:升级 `uvx.cmd`,注入认证插件参数解决兼容问题 在 `uvx.cmd` 中添加环境变量,强制 MySQL MCP 使用 `caching_sha2_password` 认证插件,无需修改 Trae 任何配置。 修改后的 `uvx.cmd` 完整内容: ```bash @echo off :: 强制注入MySQL8.x认证插件参数 set MYSQL_AUTH_PLUGIN=caching_sha2_password :: 延长超时时间适配VPN set MYSQL_CONNECT_TIMEOUT=60000 :: 启动uvx.exe并传递所有参数 "%~dp0uvx.exe" %* ``` 保存后**重启 Trae** ,MySQL MCP 成功连接,日志显示 `Connected.`。 ### 四、验证结果 启动 Trae 后,查看日志,出现以下内容代表成功: `[info] [mcp.config.usrlocalmcp.MySQL] MCPClient#onStderr [Server Internal Log] Starting MySQL MCP server with config:` 此时可在 Trae 中正常执行 SQL 查询。 ![](https://i-blog.csdnimg.cn/direct/3ff849cf2e664e4cbf44a27e2310e280.png) ### 五、总结与反思 本次问题本质是 **MySQL MCP 对 Windows 系统和 MySQL 版本的兼容性缺陷**: 1. 未适配 Windows 可执行文件后缀规则,导致本地启动失败; 2. 未开放认证插件配置,且默认插件与 MySQL 8.x 不兼容。 通过**命令映射+环境变量注入**的方式,无需修改工具源码和数据库权限,即可低成本解决问题。该方案同样适用于其他 MCP 插件的类似兼容性问题。

相关推荐
神秘的猪头18 小时前
🔌 给 AI 装上“三头六臂”!实战大模型接入第三方 MCP 全攻略
langchain·llm·mcp
神秘的猪头2 天前
🔌 把 MCP 装进大脑!手把手带你构建能“热插拔”工具的 AI Agent
langchain·llm·mcp
小兵张健2 天前
AI 页面与交互迁移流程参考
前端·ai编程·mcp
小兵张健2 天前
掘金发布 SOP(Codex + Playwright MCP + Edge)
前端·mcp
Qinana2 天前
从代码到智能体:MCP 协议如何重塑 AI Agent 的边界
前端·javascript·mcp
神秘的猪头2 天前
🚀 拒绝“手搓”工具!带你硬核手写 MCP Server,解锁 Agent 的无限潜能
agent·mcp·trae
warm3snow2 天前
Claude Code 黑客马拉松:5 个获奖项目,没有一个是"纯码农"做的
ai·大模型·llm·agent·skill·mcp
豆包MarsCode3 天前
一文快速理解 Spec 模式
trae
warm3snow4 天前
AI 核心技能系列:12 篇文章带你系统掌握大模型岗位必备技能
ai·transformer·agent·skill·mcp·fine-tunning
3秒一个大4 天前
深入理解 MCP 协议:从本质解析到实战构建
mcp