You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PHP内置服务器时mysqli连接数据库报getaddrinfo failed错误怎么办

报错原因
  • 核心错误是mysqli_connect的第一个参数配置错误:该参数需要填写MySQL数据库服务的监听地址,你错误填入了PHP内置Web服务器的地址,还加上了http://协议前缀和Web服务的8000端口,MySQL客户端无法识别带HTTP协议前缀的地址,也不会去8000端口请求数据库服务,因此触发域名解析失败的报错。
  • 附加排查点:若修改地址后仍连接失败,可检查本地MySQL服务是否正常启动,以及数据库账号密码、权限配置是否正确。
解决步骤
  1. 修改数据库连接地址配置,删除http://前缀和8000端口,默认本地MySQL服务监听127.0.0.1的3306端口,直接填写127.0.0.1即可:
// 修改前
$servername="http://127.0.0.1:8000";
// 修改后
$servername="127.0.0.1";
  1. 确认本地MySQL服务处于运行状态:
    • Windows系统可在「服务」列表中查找MySQL相关服务,确认状态为已启动
    • macOS/Linux系统可执行ps aux | grep mysql命令,查看是否有MySQL进程在运行
  2. 确认数据库连接信息匹配:你当前代码中密码参数传入的是空字符串,需确认本地root用户是否允许空密码登录,以及root账号拥有student数据库的访问权限。
  3. 建议在连接失败时输出官方错误提示,方便后续排查问题,修正后的完整代码参考:
<?php
$servername = "127.0.0.1";
$uname = "root";
// 填写MySQL root用户的实际密码,无密码则保留空字符串
$password = "";
$dbname = "student";

if(mysqli_connect($servername, $uname, $password, $dbname))
{
    echo "db connected";
}
else
{
    echo "not connected,错误信息:" . mysqli_connect_error();
}
?>

内容的提问来源于stack exchange,提问作者sahil soni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 15:15:01