WordPress网站出现Error Establishing Database Connection解决办法

前几天瓦力学长的网站突然出现打不开的情况,在浏览器输入网址后提示“Error Establishing a Database Connection”字样。

翻译成中文就是:数据库建立连接出现错误,如下图:

这已经是第二次碰到这个问题了,首次出现是在上周,我是通过重启数据库解决的。看来问题没有得到彻底解决,这次得详细研究下原因。

查询MySQL错误日志

瓦力学长这个WordPress网站目前采用VPS服务器和宝塔面板安装,所有服务器软件包括MySQL都在/www/server目录下。

我们可以使用如下命令查询MySQL错误日志:

cat /www/server/data/*.err

输入命令回车后,系统会输出会很大篇幅的错误日志,最新的日志在最下方,而且每条日志最前面都有时间戳,方便查询定位。

我很快就找到了那条错误日志,看下图。

Database was not shutdown normally! 意思是数据库非正常关闭。可以推断出,MySQL数据库是被系统中止的。

系统为什么要关闭MySQL数据库呢?得查看系统日志。

查询系统日志

Linux系统的日志文件主要存放在/var/log目录下,由于系统日志文件非常庞大,直接打开会输出很久,我只需要查询12月29日当天的日记就可以了。

输入命令:

cat /var/log/messages | grep "Dec 29"

在输入结果中,瓦力学长找到了这一条日志”Out of memory: Kill process 7610 (mysqld)“,意思就是内存不够了,结束MySQL进程。

这是我才想到,这两次数据库都是在我进行网站测速后出现的。测速时网站短时间内涌入大量访问请求,MySQL运行占用了全部内存,进而被系统终止。

解决办法

WordPress网站出现Error Establishing a Database Connection问题,目前解决办法有两个。

  • 临时解决办法:重启MySQL数据库
  • 永久解决办法:加大服务器内存或新增SWAP分区

瓦力学长这个网站平时访客也不多,我就暂时通过重启数据库解决了。如果以后流量大了,再升级服务器配置吧。

重启MySQL命令:

service mysqld restart

类似文章