很多朋友第一次在云服务器上搭 WordPress,结果一访问网站就只看到一句“建立数据库连接时出错”,页面完全打不开。这种情况看着吓人,其实大多是云服务器和 WordPress 配置没对上,只要按步骤排查,基本都能解决。
下面我会用一个“从零买云服务器 → 搭 WordPress → 出现数据库连接错误 → 一步步排查并解决”的真实流程,带你走一遍。你可以一边看,一边跟着操作。
如果你还没买云服务器,只是先查问题,也可以把下面云服务器相关的部分当成“买之前要怎么选、怎么配”的参考,避免踩同样的坑。
想直接上手操作,可以先准备一台云服务器,比如通过 腾讯云优惠链接 选一台适合 WordPress 的轻量应用服务器,系统选 CentOS 或 Ubuntu 都可以,后续步骤会按这个环境来写。
—
一、先搞清楚 WordPress 报“数据库连接出错”是什么意思
当你在浏览器打开 WordPress 网站,却只看到类似下面的提示:
建立数据库连接时出错
或者英文:
Error establishing a database connection
它的意思是:WordPress 程序已经运行起来了,但在连接 MySQL 数据库时失败了。常见原因包括:
- 数据库账号、密码、库名、主机地址写错
- MySQL 服务没启动,或者云服务器资源耗尽导致启动失败
- 数据库表损坏
- 插件、主题冲突导致数据库查询异常
- 云服务器安全组、防火墙把数据库端口挡住了
这些问题,本质上都和“云服务器怎么装环境、怎么开放端口、怎么创建数据库”有关。下面我们从买服务器开始,一步步重现并解决这个问题。
—
二、从零买一台适合 WordPress 的云服务器
如果你已经有服务器,可以跳过这一步,直接看第三节。
对于新手,建议这样选:
- 地域:选离你主要访问人群近的,比如国内用户多就选华东、华南等
- 实例规格:刚开始用,1 核 2G 内存基本够用,后续可以根据访问量增加
- 镜像:选“Linux + LAMP/LEMP 环境”这类应用镜像,可以省去很多安装步骤
- 系统盘:选 SSD 云盘,读写速度更快
- 带宽:初期 3~5Mbps 固定带宽就够用
在 腾讯云优惠链接 里选好配置、付款后,你会拿到一台云服务器和一个公网 IP,接下来就要用这个 IP 来搭建环境。
—
三、登录云服务器并安装 LAMP/LEMP 环境
这里以常见的 LAMP(Linux + Apache + MySQL + PHP)环境为例,系统为 CentOS 7。
-
用 SSH 登录服务器(Windows 可以用 Xshell、PuTTY,macOS/Linux 直接用终端):
ssh root@你的公网IP -
更新系统软件包:
yum update -y -
安装 Apache、MySQL、PHP 及相关扩展:
yum install -y httpd mariadb-server php php-mysqlnd -
启动并设置开机自启 Apache 和 MySQL:
systemctl start httpd mariadb
systemctl enable httpd mariadb
到这里,Web 服务和数据库服务已经在云服务器上跑起来了,接下来要创建 WordPress 需要的数据库和用户。
—
四、在云服务器上创建 WordPress 数据库和用户
-
运行 MySQL 安全初始化向导,按提示设置 root 密码等:
mysql_secure_installation -
登录 MySQL:
mysql -u root -p -
在 MySQL 命令行里执行以下语句,创建一个名为
wordpress的数据库,以及一个名为wpuser的用户,并授予权限:
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress. TO 'wpuser'@'localhost' IDENTIFIED BY '你的密码';
FLUSH PRIVILEGES;
EXIT;
记住这里创建的数据库名、用户名和密码,后面配置 WordPress 时要用到。
—
五、上传 WordPress 并修改配置文件
-
下载 WordPress 最新版并解压:
cd /var/www/
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
cp -r wordpress/ ./
-
设置文件权限,让 Web 服务器能正常读写:
chown -R apache:apache /var/www/
-
修改 WordPress 配置文件
wp-config.php:进入网站根目录,复制示例配置文件:
cp wp-config-sample.php wp-config.php用编辑器打开
wp-config.php,找到下面几行,把刚才创建的数据库信息填进去:
define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', '你的密码');
define('DB_HOST', 'localhost'); // 如果数据库和 WordPress 在同一台服务器,一般就是 localhost
改完后保存退出。
—
六、在浏览器访问安装页面,确认环境是否 OK
在浏览器输入你的服务器公网 IP,比如:
http://你的公网IP
如果一切正常,你应该会看到 WordPress 的经典安装界面,让你填写站点标题、管理员账号等信息。这说明:
- 云服务器的 Apache、PHP 环境正常
- WordPress 成功连接到了数据库
但很多时候,你会卡在“建立数据库连接时出错”这一步,下面我们就重点讲怎么排查。
—
七、一步步排查 WordPress 数据库连接错误
1. 检查 wp-config.php 里的数据库信息
这是最常见的原因。请打开 /var/www//wp-config.php,仔细核对以下几项:
DB_NAME:数据库名,必须是你实际创建的,比如wordpressDB_USER:数据库用户名,比如wpuserDB_PASSWORD:数据库密码,必须和创建用户时设置的一致DB_HOST:数据库主机地址,如果数据库和 WordPress 在同一台服务器,一般是localhost;如果是远程数据库,要填对应的 IP 或域名
任何一个字符写错,都会导致连接失败。建议直接复制粘贴,避免手误。
2. 确认 MySQL 服务是否正常运行
在服务器上执行以下命令,查看 MySQL 服务状态:
systemctl status mariadb
如果看到 active (running),说明服务正常;如果是 inactive (dead),说明服务没启动,可以用 systemctl start mariadb 启动它。
另外,可以检查服务器磁盘空间是否满了,因为磁盘满了也可能导致 MySQL 启动失败:
df -h
如果某个分区使用率接近 100%,需要清理一些日志或无用文件。
3. 用 phpMyAdmin 或命令行测试数据库连接
如果你安装了 phpMyAdmin,可以用浏览器访问 http://你的公网IP/phpmyadmin,用刚才创建的 wpuser 和密码登录,看能否成功进入 wordpress 数据库。
如果没有 phpMyAdmin,也可以用命令行测试:
mysql -u wpuser -p -h localhost
输入密码后,如果能进入 MySQL 命令行,说明数据库账号和密码没问题;如果提示 Access denied,说明用户名或密码错误,或者用户没有访问该数据库的权限,需要回到 MySQL 里重新授权。
4. 检查数据库表是否损坏
有时候,数据库表可能因为突然断电、被攻击等原因损坏,也会导致连接错误。可以尝试用 WordPress 自带的修复功能:
-
在
wp-config.php文件里添加一行:define('WP_ALLOW_REPAIR', true); -
在浏览器访问:
http://你的公网IP/wp-admin/maint/repair.php -
在打开的页面点击“修复数据库”按钮,等待修复完成。
-
修复完成后,一定要记得把
wp-config.php里的define('WP_ALLOW_REPAIR', true);这行删掉或注释掉,否则任何人都能访问这个修复页面,存在安全风险。
5. 排查插件或主题冲突
虽然这种情况更多是导致“白屏”或“500 错误”,但偶尔也会表现为数据库连接错误。可以按以下步骤排查:
-
禁用所有插件:通过 FTP 或服务器文件管理器,进入
/var/www//wp-content/目录,把plugins文件夹重命名为plugins-deactivate。 -
刷新网站,看是否能正常访问。如果能,说明是某个插件的问题,再把
plugins-deactivate改回plugins,然后逐个启用插件,找到导致问题的那个。 -
如果禁用插件后问题依旧,可以尝试切换到默认主题:同样进入
/var/www//wp-content/themes/目录,把当前使用的主题文件夹重命名,然后刷新网站,看是否能正常访问。
6. 检查云服务器安全组和防火墙
虽然 WordPress 连接数据库用的是本地地址(localhost),一般不会经过云服务器的公网端口,但如果你的 MySQL 配置为允许远程连接,或者你用的是 Docker 等容器环境,就需要检查安全组设置。
以腾讯云为例,登录控制台,找到你的云服务器实例,进入“安全组”配置页面,确保以下端口是放行的:
| 协议 | 端口 | 源 | 说明 |
|---|---|---|---|
| TCP | 22 | 你的办公网 IP | SSH 登录,建议限制来源 IP |
| TCP | 80 | 0.0.0.0/0 | HTTP 访问 |
| TCP | 443 | 0.0.0.0/0 | HTTPS 访问 |
| TCP | 3306 | 你的服务器内网 IP 或特定 IP | MySQL 远程访问,建议仅允许内网或信任的 IP 访问 |
另外,还要检查服务器内部的防火墙设置,比如 firewalld 或 ufw,确保没有挡住 MySQL 的端口。
—
八、总结:从买云服务器到解决数据库连接错误的关键点
通过上面的步骤,你应该已经掌握了从零搭建 WordPress 网站,以及排查“建立数据库连接时出错”的完整流程。总结一下关键点:
- 买对服务器:选择适合 WordPress 的配置,比如 1 核 2G 内存、SSD 云盘、合适的地域。
- 装对环境:正确安装 LAMP/LEMP 环境,确保 Apache、MySQL、PHP 都能正常运行。
- 创建好数据库:在 MySQL 里创建 WordPress 需要的数据库和用户,并授予足够权限。
- 配置好 wp-config.php:仔细核对数据库名、用户名、密码、主机地址,避免手误。
- 排查问题要按顺序:先检查配置文件,再确认 MySQL 服务状态,然后测试数据库连接,最后排查插件、主题和安全组设置。
如果你还没买云服务器,或者想换一台更适合 WordPress 的,可以试试 腾讯云优惠链接,选一台轻量应用服务器,按照上面的步骤一步步操作,相信你也能顺利搭建出自己的 WordPress 网站。
| 厂商 | 配置 | 带宽 / 流量 | 价格 | 购买地址 |
|---|---|---|---|---|
| 腾讯云 | 4核4G | 3M | 79元/年 | 点击查看 |
| 腾讯云 | 2核4G | 5M | 188元/年 | 点击查看 |
| 腾讯云 | 4核8G | 10M | 630元/年 | 点击查看 |
| 腾讯云 | 4核16G | 12M | 1024元/年 | 点击查看 |
| 腾讯云 | 2核4G | 6M | 528元/3年 | 点击查看 |
| 腾讯云 | 2核2G | 5M | 396元/3年(≈176元/年) | 点击查看 |
| 腾讯云GPU服务器 | 32核64G | AI模型应用部署搭建 | 691元/月 | 点击查看 |
| 腾讯云GPU服务器 | 8核32G | AI模型应用部署搭建 | 502元/月 | 点击查看 |
| 腾讯云GPU服务器 | 10核40G | AI模型应用部署搭建 | 1152元/月 | 点击查看 |
| 腾讯云GPU服务器 | 28核116G | AI模型应用部署搭建 | 1028元/月 | 点击查看 |
所有价格仅供参考,请以官方活动页实时价格为准。