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

WordPress连接非默认端口MySQL报错:无法建立数据库连接

解决WordPress数据库连接失败问题(XAMPP环境)

核心排查与修复步骤

1. 确认MySQL服务正常运行

打开XAMPP控制面板,检查MySQL模块状态是否显示为Running。若未启动,点击Start按钮启动,确保无报错提示。

2. 确认目标数据库已创建

  • 访问localhost/phpmyadmin,使用默认用户名root(密码为空或你自行设置的密码)登录。
  • 检查是否存在为WordPress准备的数据库;若未创建,点击左侧「新建」按钮,输入数据库名称后完成创建。

3. 修正wp-config.php的数据库参数

WordPress的数据库连接参数必须完全匹配XAMPP配置,尤其是非默认的3307端口。以下是正确配置示例,替换为你的实际信息:

<?php
/** WordPress数据库名称 */
define( 'DB_NAME', '你的数据库名称' );

/** MySQL数据库用户名 */
define( 'DB_USER', 'root' );

/** MySQL数据库密码 */
define( 'DB_PASSWORD', '你的MySQL密码(未设置则留空)' );

/** MySQL主机 - 必须指定3307端口 */
define( 'DB_HOST', 'localhost:3307' );

/** 创建数据表时默认的文字编码 */
define( 'DB_CHARSET', 'utf8' );

/** 数据库整理类型,不确定则保持默认 */
define( 'DB_COLLATE', '' );

/**#@+
 * 认证密钥与盐
 * 可替换为任意独一字符串,或保留示例内容先完成安装
 */
define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );
/**#@-*/

/** WordPress数据表前缀 */
define( 'WP_TABLE_PREFIX', 'wp_' );

/** 开发者模式,默认关闭 */
define( 'WP_DEBUG', false );

/* 停止编辑,继续安装 */
if ( ! defined( 'ABSPATH' ) ) {
    define( 'ABSPATH', __DIR__ . '/' );
}
require_once ABSPATH . 'wp-settings.php';
  • 关键注意点:DB_HOST必须设置为localhost:3307,仅写localhost会默认走3306端口,导致连接失败。
  • 若之前修改的是wp-config-sample.php,需将其重命名为wp-config.php才能生效。

4. 验证数据库账号有效性

  • 打开XAMPP面板中MySQL模块的Config→my.ini,确认未修改默认用户名;若设置过密码,确保与wp-config中的DB_PASSWORD一致。
  • 在phpMyAdmin中用该账号登录,确认能正常访问目标数据库。

5. 测试数据库连接可用性

创建test-db.php文件放在WordPress目录下,访问localhost/wordpress/test-db.php验证连接:

<?php
$host = 'localhost:3307';
$dbname = '你的数据库名称';
$user = 'root';
$pass = '你的密码';

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
    echo "数据库连接成功!";
} catch(PDOException $e) {
    echo "连接失败: " . $e->getMessage();
}
?>

若脚本显示连接失败,说明问题出在MySQL服务或账号权限,而非WordPress配置。

6. 检查MySQL本地连接权限

  • 登录phpMyAdmin进入「用户账户」页面,找到root@localhost用户。
  • 确认该用户拥有「SELECT、INSERT、UPDATE、DELETE」等基础权限,且主机设置为localhost或127.0.0.1。

内容的提问来源于stack exchange,提问作者Filip Kustoch

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 18:55:18