如何修复在 WordPress 中建立数据库连接的错误

已发表: 2018-02-28

这是网站所有者最担心的问题之一,您的网站关闭的时间越长,您失去的流量就越多。 这可能意味着失去订阅者、失去客户,并最终失去收入。

昨天我们遇到了这个错误,我花了 3 个多小时才使网站至少恢复到工作状态。 该站点关闭了 20 分钟,然后再次运行并再次关闭。

这是我们以前从未发生过的事情,但是当我用谷歌搜索它时,我没有找到我的解决方案的完美答案。

即使是网上的解决方案也不足以解决我的问题,虽然wpbeginner上的文章对解决问题很有帮助“错误建立数据库连接”。

但是这个错误到底是什么意思呢? 更重要的是,您如何修复它并尽快让您的网站恢复正常?

在本文中,我们将详细介绍错误消息的含义以及可能导致错误消息的原因,然后我将引导您完成一些步骤来解决问题并解决问题。

为什么会出现此错误? 是什么导致此错误?

好吧,错误消息看起来很简单,通过它,您可以了解您的网站在连接到其数据库时遇到问题。

但是等等,事情没那么简单。

这种错误因不同的因素而异,可能是由于

  • 无效的登录凭证,
  • 改变港口,
  • 文件权限,
  • 损坏的数据库,
  • wp-config的变化和
  • .htaccess。

“建立数据库连接时出错”是什么意思?

首先,让我们看一下 WordPress 是如何显示您的网站的,您就会明白为什么这个错误如此具有破坏性。

[勇敢的对齐=“中心”]

错误
  • 节省

通常,每当在您的网站上加载页面时,它都是动态构建的,这意味着它在实践中并不存在,而是动态创建的。 PHP 代码用于访问您的 MySQL 数据库并检索创建页面所需的所有信息。 有一个 PHP 查询来访问帖子标题,另一个来获取作者姓名,另一个来检索发布日期,等等。

有一个 PHP 查询来访问帖子标题,另一个来获取作者姓名,另一个来检索发布日期,以及您在网站上看到的所有其他内容。

疑难解答“建立数据库连接时出错”,这个问题出现在哪里。

您需要检查的第一件事是您在站点的前端 (www.YourSite.com) 和站点的后端 (www.YourSite.com/wp-admin) 上都收到相同的错误.

这些是数据库损坏的迹象。

  • 如果前端和后端的报错信息相同,则与“建立数据库连接时出错”不一样,
  • 网站已关闭
  • 缺少数据库表

那么你的数据库需要修复。

您无需担心您的数据库,因为 WordPress 具有尝试修复数据库的内置方法,但您必须先启用此功能。 [在继续之前保留备份。 使用 BackUpBuddy ]

为此,您需要访问 wp-config.php 文件,其中包含您的 WordPress 安装设置和配置。

wp-config.php 在您的主机中的根 WordPress 文件目录中。 您可以通过登录 cPanel、选择文件管理器并导航到安装 WordPress 的文件夹轻松访问它。
打开 wp-config 后,在 '就是这样,停止编辑之前添加以下代码! 快乐的博客'线 wp-config.php。

 定义('WP_ALLOW_REPAIR',真);

完成后,您可以通过访问此页面查看设置:

[勇敢的对齐=“中心”]

http://www.YourSite.com/wp-admin/maint/repair.php

wordpress-数据库-修复-wordpress-数据库-连接-错误
  • 节省

您应该会看到上面的屏幕,其中包含两个用于修复或修复和优化数据库的选项。 随意选择; 请注意,优化将需要更长的时间。

请注意,此数据库修复页面不安全; 任何人都可以访问该 URL 而无需登录。完成数据库修复后,请务必删除添加到 wp-config 的代码行。 这将禁用对修复页面的访问,并防止其他人弄乱您的数据库。

检查 wp-config 中的数据库登录设置

如果上述步骤不起作用或不适用于您,那么接下来您可以查看 wp-config 文件中的数据库设置。

您可以在此处指定 WordPress 连接数据库的详细信息。 这些详细信息可以通过某些插件或通过更改您的主机或编辑您的文件来更改或更改。

继续并打开 wp-config 进行编辑。
您将看到数据库的登录凭据,可能位于文件顶部附近。 它应该看起来像这样:

 // ** MySQL 设置 - 您可以从您的虚拟主机获取此信息 ** //
/** WordPress 的数据库名称 */define( 'DB_NAME', 'database_name_here' );
 
/** MySQL 数据库用户名 */define( 'DB_USER', 'username_here' );
 
/** MySQL 数据库密码 */define( 'DB_PASSWORD', 'password_here' );
 
/** MySQL 主机名 */define( 'DB_HOST', 'localhost' );

如您所见,WordPress 需要四项信息来访问您的数据库:

  1. 数据库的名称(“DB_NAME”)
  2. 登录用户名(“DB_USER”)
  3. 登录密码(“DB_PASSWORD”)
  4. 数据库主机(“DB_HOST”)

如果这些值中的任何一个不正确,WordPress 将无法连接到数据库。 如果您的数据库的每个细节都是正确的,那么您应该通过脚本检查它来完全确定它。

有时,如果 MySQL 服务器获得大量流量,或者特别是如果您使用廉价的共享主机,则 MySQL 服务器会停止工作,您可以要求支持团队确保您的 MySql 服务器工作正常,或者只需执行以下几个步骤。

访问您的 cPanel、文件管理器以及安装了 WordPress 的网站的根目录。 创建一个新文件并将其命名为“ MySQL-check.php ”并将其粘贴到下面的代码中

<?php
$test Connection = mysql_connect('localhost', 'root', 'password');
if (!$testConnection) {
die('错误:' .mysql_error());
}
echo '数据库连接正常! 和 MySQL 的反应很好';
mysql_close($testConnection);
?>

确保替换上述代码中的用户名和密码。 如果您无法通过 phpMyAdmin 连接到数据库,那么您的服务器可能有问题并且您的 MySQL 工作正常。

错误建立数据库连接
  • 节省

还没解决,试试这个?

如果它们都不适合你,那么你应该试试这个。

在您的数据库中转到表 wp_options,然后单击浏览,这将列出所有信息。

搜索网站网址。 单击编辑按钮(看起来像铅笔)并将您的 URL 重新输入到值文本区域,然后单击保存。

或者,在 SQL 控制台中添加以下行

更新 wp_options SET option_value = 'http://YOURURL.com' 
WHERE option_name= 'siteurl'

什么对我有用?

当我更新我的 WordPress 时,这发生在我身上,并且在成功更新后,我遇到了这个错误。 我做了上述所有步骤,但运气不好。 我什至联系了我的托管支持,但他们甚至找不到错误。

因此,我下载了所有备份并在 localhost 上创建了我的站点,令我惊讶的是一切正常,所以现在我知道我的服务器出了点问题。

所以我开始研究 MySQL 和 phpMyAdmin。 我附加了我的自定义 PHP 应用程序,它运行良好。 所以现在一切都清楚了。

唯一的问题是我的 WordPress 文件,我停用了所有文件和主题,删除了所有缓存,但仍然没有解决我的问题。

我检查了我的 .htaccess 它很好,但是当我单击更改权限按钮时。 我意识到这是一个小问题,消耗了我所有的时间和内心的平静。

为什么文件权限改变了?

当我更新我的 WordPress 时,一些插件在该更新中不能很好地工作并更改了文件权限,为什么会发生,我不知道。 此外,一些过时的插件消耗了我的全部资源,为此我的网站上下翻转。

而且我不断收到站点监视器 Up & Down 电子邮件通知。 此外,过时的插件通过修改它们影响了我的 MySQL.so 文件和 HTTP.so。 由于我无法访问它们,因此我联系了支持团队以恢复它们。 毕竟,完成了。

我恢复了我的权限以及主题、插件和缓存。 然后Boom又回来了。 SmartActiveBlogger 再次上线。

结论

它发生的原因没有确定的因素,也没有明确的答案来纠正它。 您必须检查所有解决方案并检查哪些有效。 如果你运气好,那么你可以在 5 分钟内解决它,如果你像我一样不走运,你可能需要更多的时间。

但没有我花那么多时间,因为我必须做研究并给你答案,这样你就不会像我一样面对问题。

另外,请留意您的 WordPress 根目录上的 error_log。 如果您有任何服务器错误,它可以帮助您解决问题

请写下您是如何解决这个问题的以及哪些解决方案对您有用。