应安装微软官方最新版Visual C++ 2015–2022 Redistributable(x64),因其专为MSVC 2019+编译程序(如MySQL 8.0+)提供vcruntime140_1.dll等必需组件,旧版或32位包无法满足;安装后必须重启系统以完成DLL全局注册。

直接装最新版VC++ 2015–2022 Redistributable(x64)
报错“无法启动此程序,因为计算机中丢失vcruntime140_1.dll”或“找不到MSVCP140.dll”,本质不是MySQL安装包坏了,而是它依赖的底层运行时没就位。MySQL 8.0+(包括Workbench、Installer、mysqld服务)全部基于MSVC 2019工具链编译,必须用vc_redist.x64.exe(2015–2022合集),不是旧版2015单独包。
常见错误操作:只装了vc_redist.x86.exe(32位)或只装了2015版——这两者都无法提供vcruntime140_1.dll,因为该文件是2019+运行库新增的。
- 去微软官方下载页获取最新
vc_redist.x64.exe(截至2026年9月,最新版仍叫“Visual C++ 2015–2022 Redistributable”) - 双击运行,全程默认下一步,无需勾选任何可选组件
- 安装完成后必须重启系统——不重启,DLL不会注册进全局路径,MySQL Installer或
mysqld仍会闪退或报错 - 如果机器同时跑其他VS系软件(如Git for Windows、CMake工具链、某些Python发行版),也建议顺手装上
vc_redist.x86.exe,避免后续调用错位
别手动复制vcruntime140_1.dll到System32
网上流传“下载dll→扔进C:\Windows\System32→运行regsvr32 vcruntime140_1.dll”的方案,实际风险高、效果差。
vcruntime140_1.dll不是独立COM组件,regsvr32对它完全无效;而且单个DLL缺失往往意味着整套运行时环境残缺(比如vccorlib140.dll、msvcp140.dll、CRT系列dll也大概率缺失),补一个只是掩耳盗铃。
- 手动复制可能触发Windows Defender误报(该DLL常被恶意软件捆绑篡改)
- 32/64位混放极易导致
LoadLibrary失败,尤其在MySQL Installer这种混合架构进程中 - 系统更新后,手工放的DLL可能被覆盖或校验失败,问题复现
Installer闪退?先确认是不是VC++根本没加载成功
MySQL Installer双击后瞬间消失,没弹窗、没日志——这大概率不是兼容性问题,而是api-ms-win-crt-runtime-l1-1-0.dll或vcruntime140.dll压根没被找到,进程启动即终止。
验证方法:以管理员身份打开CMD,执行:
cd /d "C:\Program Files\MySQL\MySQL Installer for Windows" MySQLInstallerConsole.exe --help
如果提示“不是有效的Win32应用程序”或“缺少xxx.dll”,说明VC++运行库确实未生效。
- 不要急着开兼容模式或改UAC设置——这些对DLL缺失无效
- 检查是否装了x64版但系统是32位(极少见,但WinServer 2008 R2 x86用户会踩)
- 运行
systeminfo确认系统架构,再核对安装的vc_redist.x64.exe或vc_redist.x86.exe是否匹配
ZIP版部署时mysqld --initialize失败,也要查VC++
绿色解压版MySQL执行mysqld --initialize --console后控制台一闪而过、没输出临时密码,不是配置写错了,很可能是mysqld.exe因缺DLL根本没跑起来。
这个场景下容易误判为权限或路径问题,但真正卡点常在依赖层。
- 务必用CMD(不是PowerShell),且“以管理员身份运行”——否则即使DLL齐全,也可能因UAC拦截静默失败
- 执行前先手动运行一次
mysqld --version,能打出版本号才说明运行时环境基本正常 - 如果
--version都失败,回到第一步重装vc_redist.x64.exe并重启
最易被忽略的一点:VC++运行库安装后,部分老系统(尤其是Windows Server 2008 R2或长期未更新的Win10)需要同时启用.NET Framework 3.5(含2.0 SP2),否则某些CRT初始化函数仍会调用失败。这不是MySQL直接依赖,但它是VC++运行库自身的前置条件。


















