Windows下VSCode用PHP Server和Live Server打开PHP文件遇数据库连接错误求助
排查步骤及解决方案
1. 确认MySQL服务是否正常运行
打开XAMPP控制面板,检查MySQL模块的状态是否为"Running"。若未启动,点击"Start"按钮启动服务。也可通过按下Win+R输入services.msc打开服务管理器,找到"MySQL"服务并确认其处于运行状态。
2. 核对数据库连接参数
检查PHP代码中的数据库连接逻辑,确保以下参数与XAMPP配置一致:
- 主机地址:应为
localhost或127.0.0.1,不要填写远程服务器地址 - 端口号:默认是
3306,若修改过XAMPP的MySQL端口,需同步调整代码中的端口值 - 用户名:默认是
root,若自定义过用户名需匹配 - 密码:XAMPP默认MySQL密码为空,若设置过密码需填写正确
示例连接代码参考:
$pdo = new PDO('mysql:host=localhost;port=3306;dbname=your_database_name', 'root', '');
3. 配置PHP Server扩展指向XAMPP的PHP环境
VSCode的PHP Server扩展可能默认使用系统PHP而非XAMPP内置PHP,导致无法识别XAMPP的MySQL服务:
- 打开VSCode设置,搜索
php server php path - 将路径设置为XAMPP安装目录下的PHP可执行文件,例如
C:\xampp\php\php.exe
4. 检查3306端口是否被占用
若3306端口被其他程序占用,MySQL无法正常提供服务:
- 打开命令提示符(CMD),执行命令:
netstat -ano | findstr :3306 - 若返回结果显示其他进程ID(PID),打开任务管理器找到对应PID的进程并结束,随后重启MySQL服务
5. 排查防火墙或安全软件拦截
Windows防火墙或第三方安全软件可能拦截MySQL的端口连接:
- 临时关闭防火墙/安全软件,测试数据库连接是否恢复正常
- 若问题解决,将XAMPP的MySQL程序(
C:\xampp\mysql\bin\mysqld.exe)添加到防火墙允许列表
6. 确认目标数据库已创建
打开http://localhost/phpmyadmin,查看左侧数据库列表,确认代码中指定的数据库名称已存在。若不存在,需先在phpMyAdmin中创建对应数据库。
内容的提问来源于stack exchange,提问作者Specto
相关产品推荐
相关产品推荐

