MySQL 8.4安装提示缺少msvcp140.dll等DLL,根本原因是Windows缺失VC++ 2015–2022运行库(含vcruntime140_1.dll及UCRT组件),须安装官方vc_redist.x64.exe解决,而非手动复制DLL。

msvcp140.dll、vcruntime140_1.dll、api-ms-win-crt-*.dll 这类报错,根本不是 MySQL 本身的问题,而是你的 Windows 缺少对应版本的 Visual C++ 运行库。装最新版 Microsoft Visual C++ 2015–2022 Redistributable (x64) 就能解决 95% 的 DLL 丢失问题。
为什么装 MySQL 8.4 会缺 DLL?
MySQL 8.4 是用 Visual Studio 2022 编译的,依赖 vcruntime140_1.dll 和一组 api-ms-win-crt-*.dll —— 这些都属于 UCRT(Universal CRT),由 VC++ 运行库提供。Windows 7/8.1 默认不带,Win10/11 虽自带但可能版本旧或被系统更新破坏。
- 报错里出现
msvcp140.dll或msvcr120.dll:说明你混用了老版本 MySQL(比如 5.7)的 bin 文件,或误删了运行库 - 提示
api-ms-win-crt-runtime-l1-1-0.dll is missing:典型 UCRT 缺失,不是 MySQL 安装包坏了 - 错误发生在
mysqld --initialize或net start mysql阶段:说明服务进程根本没起来,不是配置或权限问题
别去下 DLL 文件,直接装官方运行库
手动下载单个 DLL 是最危险的做法:容易下到带病毒的镜像站、版本不匹配、32/64 位放错目录(C:\Windows\System32 vs C:\Windows\SysWOW64),甚至覆盖系统关键文件。
- 去微软官网下载
vc_redist.x64.exe(哪怕你用的是 Win10/11,也建议重装一遍):https://www.php.cn/link/849c7b9fe5dfea5e93665c8bbfba04f0 - 右键以管理员身份运行,勾选“为所有用户安装”,一路下一步
- 装完不用重启,直接进命令行跑
mysqld --initialize --console测试
PATH 和 bin 目录放错也会触发假性 DLL 报错
即使运行库装全了,如果 PATH 没指向正确的 MySQL bin 目录,系统可能加载旧版或残存的 libmysql.dll,然后报“找不到入口点”或“模块初始化失败”——看着像 DLL 问题,其实是路径污染。
- 确认当前用的
mysqld.exe真实路径:where mysqld,输出必须是 MySQL 8.4 安装目录下的bin\mysqld.exe - 删掉所有其他 MySQL 版本的
bin路径(比如 5.7、8.0 的残留) - 不要把 DLL 文件手动扔进
C:\Windows\System32—— MySQL 8.4 的bin目录里自带全部所需 DLL,只要 PATH 正确,它会优先从这里加载
libmysql.dll),其实只是 PATH 指向了旧目录,或者系统里有多个 mysqld.exe 冲突。装对运行库 + 清干净 PATH,比到处搜 DLL 安全又快。


















