当我们使用WordPress建站完成后,有时候打开网页会发现页面显示‘Error establishing a database connection’(建立数据库连接时出错)的错误,使得用户无法访问我们的网站。出现这个问题的主要原因是我们在配置的 WordPress 数据库时出现了问题。
对于 WordPress 新手来说,可能不知道该解决这个问题。那么本篇教程就手把手教会大家在这种情况下如何快速修复。
排查问题原因
首先我们要知道数据库是一种可以轻松存储、组织和检索其他软件中的数据的软件。我们使用 WordPress 建站后,数据库也已经安装完成,并且后续网站上所有内容、图片和数据。也是存放在数据库中的。
每次有用户访问我们的网站时,WordPress 都会连接到数据库。而连接到数据库需要以下信息:
- 数据库名称
- 数据库用户名和密码
- 数据库服务器
上述信息都在我们的 WordPress 文件中配置,配置的文件名称为:wp-config.php。
如果任何上述信息任何一个不正确,那么 WordPress 将无法连接到我们的数据库服务器,并且提示“建立数据库连接时出错”错误。
所以我们排查的顺序:1、查看MySQL数据库服务器是否正常运行;2、确认正常运行后,就是确认我们配置的数据库信息是否准确。
确认MySQL数据库是否正常运行
如果你的主机性能不高,有时候碰到了瞬时大流量访问的情况,就有可能会导致主机服务无法处理负载。
这个时候数据库可能就会停止运行导致用户无法访问,所以我们先确认下数据库是否正处在运行的状态。
宝塔用户查看数据库状态
宝塔面板用户可以直接登录管理后台后选择数据查看运行状态,如果处在暂定可直接点击安装运行。
主机用户查看数据库状态
其非宝塔用户,则需要联系主机托管提供商的客户,询问他们网站的 MySQL 服务器是否正常运行。
确认数据库的信息
数据库连接错误的最常见原因是我们在 wp-cofig.php 提供的数据库信息不正确。一般来说这种情况出现在网站搬家后,当我们将网站的服务器移至新的主机后忘记更新数据库的信息则回导致这个问题。
如果是这样的话请尝试编辑 wp-config.php 文件,在文件中找到以下内容:
/** 数据库名 */
define( 'DB_NAME', '数据库名称' );
/** 用户名 */
define( 'DB_USER', '用户名' );
/**密码 */
define( 'DB_PASSWORD', '密码' );
/** MySQL hostname(一般不需要修改) */
define( 'DB_HOST', 'localhost' );
在文件中必须确保提供的数据库名称、用户名、密码和数据库主机的信息正确,请根据下面提供的方法找到正确的数据库配置,并和 wp-config.php 比对修正。
以下分别给出主机商、宝塔面板如何获取数据库名、用户名、密码的方法。不同用户可以参考:
注意:主机商一类的数据库是不提供密码复制的,需要我们重新修改管理密码自行记录,也可以每次使用时每次都修改管理密码。
确认数据库主机
上述操作完成后,网站一般都可以正常访问了,但如果还是显示数据库错误时,我们需要再次确认下数据库主机的名称。
正如前面所说的我们在 wp-config.php 文件的 DB_HOST 一般默认是将 localhost 作为数据库主机。但是如果配置文件的数据库名称、用户名和密码信息确认是正确的,那么可以考虑 DB_HOST 是否正确,这就需要联系下主机商的客服进行确认。
尝试修复 WordPress 网站数据库
如果通过上述步骤确认你的数据库名、数据库用户名、密码、数据库主机全部正确。那么可能的情况是数据库损坏了。
WordPress 自带数据库修复模式,只需要打开 wp-config.php 文件,在最下面增加这么一行:
define('WP_ALLOW_REPAIR', true);
接下来,请在浏览器中访问 WordPress 网站地址:https://yourdomain.com/wp-admin/maint/repair.php。请将 yourdomain.com 替换成自己网站的地址。在页面中,我们将看到两个选项:“修复数据库”和“修复并优化数据库”。建议选择“修复数据库”,修复更为高效。
运行完上述数据库的修复后,请删除添加到 wp-config.php 文件中的代码行,否则任何人都可以运行修复。
最后
以上操作完成后,问题一般都能够得到解决。如果网站还是无法访问可能就不是数据库方面的原因了,可联系客服获取帮助。