phpMyAdmin 与 wp-config.php 完全无关,它不读取也不解析该文件;其数据库连接仅依赖自身 config.inc.php 中的 $cfg['Servers'][$i]['host'] 配置,需确保该值与当前环境 MySQL 实际可访问地址一致。
phpmyadmin 本身根本不会读取 wordpress 的 wp-config.php 文件,所以它“无法读取 db_host”这个说法本身就不成立——它压根不尝试去读。
phpMyAdmin 和 wp-config.php 完全无关
phpMyAdmin 是一个独立的 MySQL 管理工具,它只依赖自己的配置文件 config.inc.php。WordPress 的 wp-config.php 对它来说只是服务器上一个普通 PHP 文件,没有任何加载逻辑或解析机制。你看到的任何关于 “DB_HOST 未被读取” 的报错,实际来源只有两个可能:
- 你在 phpMyAdmin 界面里手动填了错误的 host(比如填了
localhost但 MySQL 实际监听127.0.0.1),然后点登录失败; - 你在 WordPress 后台或前端看到数据库错误,误以为是 phpMyAdmin 在读取
wp-config.php——其实那是 WordPress 自己在用,和 phpMyAdmin 毫无关系。
真正容易混淆的场景:用 phpMyAdmin 登录时填什么 host?
当你在 phpMyAdmin 登录页输入数据库凭据时,host 字段填什么,取决于你给 phpMyAdmin 配置的服务器定义,而不是 wp-config.php 里的值。常见误区:
-
localhost≠127.0.0.1:MySQL 对这两者做不同认证(前者走 socket,后者走 TCP),填错就直接拒绝连接; - 如果你用 Docker 或宝塔,
DB_HOST在 WordPress 里写mysql或192.168.100.2是合理的,但 phpMyAdmin 的$cfg['Servers'][$i]['host']必须指向它自己能访问到的 MySQL 地址(比如127.0.0.1或容器名); - phpMyAdmin 不会自动从
wp-config.php抽取 host 值——没这功能,也绝不该有。
为什么你会觉得“它该读 DB_HOST”?
这种误解通常来自两种操作惯性:
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
- 你刚改完
wp-config.php里的DB_HOST,接着去 phpMyAdmin 登录,顺手填了同一个值,结果连不上,就以为是“phpMyAdmin 没读对”; - 你在调试 WordPress 连接失败时,打开 phpMyAdmin 想验证数据库是否可达,却忘了 phpMyAdmin 的连接参数是独立配置的,不是共享的。
最常被忽略的是:phpMyAdmin 的 config.inc.php 里 $cfg['Servers'][$i]['host'] 的值,必须和你当前运行环境里 MySQL 实际可访问的地址一致——哪怕它和 WordPress 用的不一样,也没问题;两者本就不需要、也不应该耦合。
立即学习“PHP免费学习笔记(深入)”;


















