wordpress数据库连接错误主因是wp-config.php中db_name、db_user、db_password、db_host四值与phpenv实际数据库信息不一致,需逐字核对大小写、引号类型、空格及db_host应为'127.0.0.1';同时确认mysql用户拥有全部权限且服务正常运行。
因为 wordpress 不读 phpmyadmin 的配置,它只认自己 wp-config.php 里的数据库凭证;改完 mysql 用户密码后,两个地方的密码不同步,自然连不上。
phpMyAdmin 和 WordPress 用的是两套独立密码配置
phpMyAdmin 的登录密码(即你改的那个)只控制它自己能不能访问 MySQL,和 WordPress 完全无关。WordPress 连数据库靠的是 wp-config.php 里硬编码的 DB_USER 和 DB_PASSWORD。哪怕你把 phpMyAdmin 配置成免密登录,只要 wp-config.php 里写的还是旧密码,WordPress 就会报 “Error establishing a database connection”。
- phpMyAdmin 密码存在它的
config.inc.php文件里,路径通常是/phpmyadmin/config.inc.php - WordPress 密码存在网站根目录的
wp-config.php文件里,关键行是define('DB_PASSWORD', 'xxx'); - 两者修改互不影响,必须分别更新
改完 MySQL 用户密码后,wp-config.php 必须同步更新
如果你是通过 phpMyAdmin 的「用户账户」页面改了 MySQL 用户(比如 root 或某个专用用户)的密码,那下一步就是打开 wp-config.php,把 DB_PASSWORD 的值换成新密码。别漏掉引号,也别多加空格。
- 检查
DB_USER是否和你改密码的用户名一致(比如改的是wp_user,但wp-config.php写的是root,那就白改) - 如果用的是 Docker 环境,
DB_HOST不能写localhost,得填 MySQL 容器名(如mysql-db) - 改完保存,上传覆盖原文件;不要只在本地编辑完就以为生效了
常见连不上但你以为改对了的坑
改完密码仍连不上,大概率卡在这几个地方:
-
wp-config.php被缓存:某些主机或插件会缓存该文件,尝试清空对象缓存或临时禁用缓存插件 - 密码含特殊字符没转义:比如新密码是
p@ss!word#2026,PHP 解析时可能出错,建议先用纯字母数字测试 - MySQL 用户权限没刷新:改完密码后执行
FLUSH PRIVILEGES;(可通过 phpMyAdmin 的「SQL」页运行) - 错误提示是 “Access denied for user”,说明用户名/密码/主机三者组合不被 MySQL 接受,不是 WordPress 代码问题
最麻烦的其实是改了密码却忘了哪份配置对应哪个环境——本地 XAMPP、测试服务器、生产站点,三个 wp-config.php 往往各改各的。动手前先确认你在改的是当前出问题的那个实例。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











