WordPress 中的“建立数据库连接时出错”提示是一个致命错误,会导致用户无法访问您的网站。当 WordPress 无法连接到数据库时,就会发生这种情况。
由于多种因素都可能影响此连接,因此对于初学者来说,排除此错误可能有点困难。
过去16年来,我们一直使用WordPress搭建博客,期间遇到过各种各样的错误和警告,包括“建立数据库连接时出错”。通过经验积累和大量的反复试验,我们学会了如何在不中断网站运行的情况下解决这些问题。
本文将一步一步地向您展示如何轻松修复 WordPress 网站上的“建立数据库连接时出错”的问题。

WordPress中建立数据库连接时出现错误的原因是什么?
数据库是一种软件,它使存储、组织和从其他软件检索数据变得容易。
作为内容管理系统,WordPress 使用数据库来存储所有内容和其他网站数据。每次有人访问您的网站时,它都会连接到该数据库。
WordPress 连接数据库需要以下信息:
1.您的数据库名称
2.数据库用户名和密码
3.数据库服务器
该信息存储在您的 WordPress 配置文件中,该文件名为wp-config.php。
如果这些信息有任何错误,WordPress 将无法连接到您的数据库服务器,您将看到“建立数据库连接时出错”的错误信息。

这是最常见的 WordPress 错误之一。除了凭据错误之外,如果数据库服务器宕机或数据库文件损坏,也可能出现此错误。
话虽如此,让我们来看看如何通过分步故障排除来解决 WordPress 中的“建立数据库连接时出错”问题。
1. 检查您的 WordPress 数据库凭据
数据库连接错误最常见的原因是 凭据错误。如果您最近将 WordPress 网站迁移到了新的主机,那么这很可能是问题所在。
您的 WordPress 数据库凭据存储在 wp-config.php 文件中。它是 WordPress 的配置文件,其中包含重要的设置,包括数据库信息。
如果您之前没有编辑过 wp-config.php 文件,请查看我们的wp-config.php 文件编辑入门指南,以获取更多说明。
您需要在wp-config.php文件中查找以下几行:
|
1
2
3
4
5
6
7
8
9
|
// ** MySQL settings - You can get this info from your web host ** ///** The name of the database for WordPress */define( 'DB_NAME', 'database_name_here' );/** MySQL database username */define( 'DB_USER', 'username_here' );/** MySQL database password */define( 'DB_PASSWORD', 'password_here' );/** MySQL hostname */define( 'DB_HOST', 'localhost' ); |
在这里,您必须确保数据库名称、用户名、密码和数据库主机信息正确无误。
您可以在WordPress 主机账户控制面板中确认此信息。本教程将以Bluehost为例,但其他主机平台的操作步骤也类似。
登录后,点击左侧栏的“网站”选项卡,然后切换到“高级”选项卡。接着,向下滚动到“数据库”部分,点击旁边的“管理”按钮。

这将在新窗口中打开 cPanel 中的 MySQL 数据库页面。
您可以在“当前数据库”部分找到数据库名称和用户名。请务必将这些信息复制粘贴到记事本中,以便将其添加到 wp-config 文件中。

接下来,向下滚动到“当前用户”部分,在那里您可以点击数据库名称旁边的“更改密码”链接。
这将带您进入一个新屏幕,您可以在此根据自己的喜好更改数据库密码。

确认所有数据库详细信息后,如有需要,您可以在 wp-config.php 文件中更改这些信息。
之后,请再次尝试访问您的网站,看看数据库连接错误是否已消失。
如果你仍然能看到错误,那就说明还有其他地方出了问题。
2. 检查您的数据库主机信息
如果您确信您的数据库名称、用户名和密码信息准确无误,那么您需要确保使用的是正确的数据库主机信息。
大多数 WordPress 主机托管公司都使用 localhost 作为数据库主机。但是,一些托管型 WordPress 主机托管公司会使用独立的服务器来托管数据库。在这种情况下,您的数据库主机信息将不是 localhost。
这意味着您需要联系您的 WordPress 主机托管公司来确认这些细节。
3. 修复 WordPress 数据库
现在,您可能在 wp-admin 控制面板中看到不同的错误,例如“一个或多个数据库表不可用”或“数据库可能需要修复”。在这种情况下,您需要修复数据库。
您可以通过在 wp-config.php 文件中添加以下代码来实现。请确保将其添加到“That’s all, stop editing! Happy blogging”这行代码之前:
|
1
|
define('WP_ALLOW_REPAIR', true); |
完成上述步骤后,您可以通过访问此页面查看设置:http://www.yoursite.com/wp-admin/maint/repair.php。只需确保将 yoursite.com 替换为您自己的域名即可。
在这里,您必须点击“修复数据库”按钮来开始该过程。

注意:用户无需登录即可访问数据库修复页面。完成数据库修复和优化后,请务必从 wp-config.php 文件中删除此行代码。
但是,如果您不想向网站添加任何代码,也可以使用主机帐户的 cPanel 来修复数据库。
请前往您的主机账户,在左侧栏打开“网站”页面。然后,切换到“高级”选项卡,并在“数据库”部分点击“管理”按钮。

这将在新标签页中打开 cPanel。在这里,向下滚动到“修改数据库”部分,然后从“修复数据库”下拉菜单中选择您的数据库名称。
完成上述步骤后,只需点击“修复数据库”按钮即可开始修复过程。

主机控制面板现在将自动为您修复数据库。
流程完成后,您还会看到一条成功消息。

您现在可以访问您的 WordPress 网站,查看错误是否已解决。
4. 检查数据库服务器是否宕机
如果一切看起来都正常,但 WordPress 仍然无法连接到数据库,那么可能是您的数据库服务器(MySQL 服务器)宕机了。
这可能是由于服务器流量过大造成的。您的主机服务器无法处理如此大的负载(尤其是在使用共享主机时)。
因此,您的网站速度会变慢,甚至可能对部分用户显示错误信息。在这种情况下,您应该致电或通过在线聊天联系您的主机提供商,询问您的 MySQL 服务器是否响应正常。
此外,如果您在同一服务器上运行其他网站,则可以检查这些网站以确认您的SQL 服务器是否已关闭。
如果您在同一主机账户上没有其他网站,那么只需转到您的主机控制面板并切换到“高级”选项卡即可。
之后,点击phpMyAdmin部分旁边的“管理”按钮。

这将在新窗口中打开 phpMyAdmin,您必须点击顶部的“数据库”选项。
之后,点击数据库名称即可访问其设置。如果可以访问,则需要检查数据库用户是否拥有足够的权限。

为此,您需要创建一个名为 testconnection.php 的新文件,并将以下代码粘贴到该文件中:
|
1
2
3
4
5
6
7
8
|
<?php$link = mysqli_connect('localhost', 'username', 'password');if (!$link) {die('Could not connect: ' . mysqli_error());}echo 'Connected successfully';mysqli_close($link);?> |
粘贴代码后,请务必将用户名和密码替换为您自己的信息。现在您可以将此文件上传到您的网站,并通过网络浏览器访问它。
如果脚本连接成功,则说明您的用户拥有足够的权限,错误是由其他原因造成的。
现在,您必须返回到您的 wp-config 文件并仔细检查,以确保所有详细信息准确无误且没有任何拼写错误。
其他对用户有效的解决方案
如果上述故障排除技巧未能解决您网站上的数据库连接错误,那么您可以尝试以下附加步骤。
据用户反馈,这些步骤帮助部分用户解决了网站上的数据库连接错误。
1. 更新 WordPress 站点 URL
您可以尝试使用 cPanel 中的 phpMyAdmin 更新 WordPress 网站 URL。
只需从您的主机账户控制面板访问 phpMyAdmin,然后从列表中选择您的 WordPress 数据库即可。
之后,切换到顶部的 SQL 菜单,并输入以下 MySQL 查询:
|
1
|
UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl' |
它应该看起来像这样:

别忘了提供您自己的网站 URL 并更改wp_options为您自己的表名,因为您可能已经更改了WordPress 表前缀。
2. 重启 Web 服务器
使用专用服务器、本地服务器和虚拟专用服务器 (VPS)的用户可以尝试重启服务器。
这将重启您的 Web 服务器和数据库服务器,这可能会修复导致错误的一些临时故障。
3. 寻求帮助
如果其他方法都无效,那么您可能需要联系您的网站托管公司。所有优秀的 WordPress 托管公司都会帮助您排查问题、为您指明正确的方向,甚至帮您解决问题。