相信很多新手朋友都遇到过WordPress提示“建立数据库连接时出错”这个错误,英文为“Error establishing a database connection”:
今天我们就来讲一下这个错误一般是什么原因导致,以及如何进行修复。
“建立数据库连接时出错 ”是什么意思?
首先,我们需要了解WP是如何显示网站的,这将让我们清楚地了解为什么这个错误数据库是如此具有破坏性。WordPress系统站点的所有数据都由MySQL(或其他分支)数据库存储,然后使用PHP语言来检索和存储来自该数据库的信息。
通常,无论何时加载您网站的任何页面,它都是即时创建的。 需要使用PHP代码访问MySQL数据库以检索构建页面所需的所有数据。比如通过不同的PHP查询函数获取文章标题、作者姓名、发布日期等。
“建立数据库错误时出错”意味着由于某种原因,您的站点PHP代码无法与MySQL数据库连接以获取显示该页面所需的数据。
数据库连接出错的原因和处理方案
数据库连接出错,一般是以下原因之一造成的:
1、数据库连接信息错误
熟悉WordPress的朋友应该知道,在WordPress根目录下有一个名为 wp-config.php
的文件,里面包含了数据库连接信息:
所以,当我们遇到“建立数据库连接时出错”时,我们应该首先检查这个wp-config.php
文件的数据库连接信息是否正确,尤其是当我们更换主机或数据库的时候。如果不正确,就根据实际情况去修正。
如果你不清楚新主机的数据库连接信息,建议联系主机商咨询。
2、MySQL数据库停掉了
由于某些原因,可能会导致MySQL数据库进程停掉,比如内存不够、PHP查询语句错误等,这个时候, 如果已经确认wp-config.php
的数据库连接信息是正确的,那我们就应该去检查下MySQL是否停掉了。如果是的,那就启动看下是否可以恢复。
查看服务器上的数据库是否正常运行,查看命令:
- ps aux|grep mysql
如果显示(如下图)可以查看到 MySQL 的进程,说明数据库是运行正常,否则需要手动启动MySQL。
导致MySQL停掉的原因可能很多,也比较复杂,在此我们不进行讨论。如果MySQL经常无故停掉,建议找专业的运维人员去帮忙处理。
3、数据库表损坏
如果已经确认wp-config.php
的数据库连接信息是正确,并且MySQl数据库运行正常,那我们就应该去检查数据库是否有数据表损坏了。
由于插件、主题的不断变化,或者在WordPress网站中安装了安装编码错误或不良的插件,或者文章数据量很大,这些都有可能导致数据库损坏。
要查找数据库哪个表是否损坏,一般我们可以登录phpmyadmin等可视化数据库管理界面去查看,如果看到某个表的大小明显和实际数据不符,或者有提示“正在使用中”,那就可以先下载备份一下数据库,然后选中表,使用phpMyAdmin等内置的修复功能去修复。
参考:《phpMyAdmin教程:检查/优化/修复/删除/编辑数据表》
此外,我们可以开启WordPress内置的数据库修复功能进行修复,参考《如何用WordPress自带数据库修复优化工具》
4、某些PHP文件损坏
如果通过上面的步骤去检查操作了,还是无法恢复正常,那我们就需要去考虑是否有PHP文件损坏了。因为PHP文件的损坏,会导致查询功能的错误,从而导致数据库出错。
至于到底哪些PHP文件损坏,这个是很难去找的,我们只能不断去尝试。大致的思路如下:
- 备份网站的所有文件,很重要!!!
- 通过FTP等可以管理文件的界面,去删除 wp-content/themes/ 目录下当前使用的主题,然后看下是否可以恢复。注意必须保留一个WP默认自带的主题,然后尝试访问 /wp-admin/ 网址。
- 删除 wp-content/plugins/ 目录下的插件,看下是否可以恢复
- 如果还不行,删除 /wp-content/ 和 wp-config.php 以外的文件,重新到官方下载版本一致的WordPress原版,上传覆盖。
整个操作过程可能有些复杂,如果你不会,请务必找专业的运维人员操作,并且请务必做好备份!!!好了,以上就是处理 “建立数据库连接时出错” 的一般思路,希望可以帮到大家。
网上还有很多解决WordPress数据库连接错误解决方案,大家可以自己去搜索,找到适合自己的。另外一个解决方法可以查看:https://blog.csdn.net/Zhang_1218/article/details/79772804