直接安装 Microsoft Visual C++ Redistributable for Visual Studio 2015–2022(x64)即可解决phpEnv中MySQL 8.x启动失败问题,因其硬依赖vcruntime140_1.dll等运行时文件,而精简系统常缺失该组件;必须装x64合集版,验证需确认System32下DLL存在、注册表v143项已写入、mysqld.exe进程常驻且3306端口被占用。

直接装 Microsoft Visual C++ Redistributable for Visual Studio 2015–2022 (x64) 就能过,别试旧版或单个年份的包——这是当前(2026年)phpEnv + MySQL 8.x 组合下最稳的解法。
为什么 phpEnv 安装 MySQL 时总卡在 VC 运行库?
phpEnv 是轻量级 Windows PHP 环境套件,它打包的 MySQL 二进制文件(尤其是 8.0.33+ 版本)由 VS2019/2022 编译,硬依赖 vcruntime140.dll、vcruntime140_1.dll、msvcp140.dll 这三个核心文件。但精简系统、Win11 新装机、或某些 OEM 预装系统默认不带这些运行库,导致 MySQL 服务启动失败,错误日志里反复出现:
The program can't start because vcruntime140_1.dll is missing
无法定位程序输入点 _except_handler4_common
立即学习“PHP免费学习笔记(深入)”;
这不是 phpEnv 本身的问题,而是它调用的 MySQL 原生 Windows 服务进程找不到运行时支撑。
必须装 x64 版本,且不能只装一个年份的包
常见误区是只装 VC++ 2015 或 2019 单独包,结果仍报错。原因在于:
- MySQL 8.0.33+ 实际链接的是
v143运行时(对应 VS2022),但会回退查找v142(VS2019)、v141(VS2017)甚至v140(VS2015)的符号 - 仅装 x86 包对 x64 的 phpEnv 完全无效——
C:\Windows\System32\vcruntime140_1.dll必须存在,而syswow64下的 x86 版本不被加载 - 微软已将 2015–2022 合并为一个安装器,新版包自动覆盖旧版符号表,避免版本冲突
✅ 正确做法:下载官方 vc_redist.x64.exe(2015–2022 合集),运行后勾选「为所有用户安装」,完成后重启命令行终端(不是重启电脑,但需重开 phpEnv 控制台)。
验证是否真装好了,别信“安装成功”弹窗
安装程序退出不等于 DLL 已就位。手动确认三件事:
- 检查文件是否存在:
C:\Windows\System32\vcruntime140_1.dll(注意是System32,不是SysWOW64) - 查注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\DevDiv\vc\Servicing\14.3应有值(表示 v143 已注册) - 在 phpEnv 界面点击「启动 MySQL」后,立刻打开任务管理器 → 查看「详细信息」页 → 找
mysqld.exe进程。如果秒退或没出现,说明 DLL 还没生效;如果常驻且端口(默认 3306)被占用,基本就过了
若仍失败,别反复重装——先运行 DISM /Online /Cleanup-Image /RestoreHealth 修复系统映像,再重试。很多“装了还不行”的案例,其实是系统组件损坏导致 DLL 注册表项写入失败。
真正容易被忽略的点是:phpEnv 自带的 MySQL 启动脚本不会校验 VC 库是否存在,它只管执行 mysqld --console。一旦 DLL 缺失,进程静默崩溃,连错误日志都不写。所以排查必须从系统级 DLL 和进程存活状态入手,而不是盯着 phpEnv 界面等提示。



















