刚刚不是聊到了阿里云 WordPress "建立数据库连接时出错"的问题吗?有网友于是将服务器内存升级到了1G,情况有了些许好转。但每隔几天还是会出现“建立数据库连接时出错”的提示。当出现此提示时,用free -m命令查看内存,内存使用情况基本都是100%。这说明,问题的主要原因还是内存不够用而导致WordPress的数据库被系统强制停止。

  在网上查了很多通过设置降低 WordPress 对内存的需求的方法,当均未奏效。由于不愿再多投入资金提高服务器的内存硬件,于是就想到了另一个方法:通过增加 Linux 虚拟内存来变相加大服务器的内存空间。

  输入命令:free -m,会得到如下返回内存信息,如果Swap一栏显示为0,那就说明没有开启Swap。增加方法如下:在服务器终端输入以下命令:dd if=/dev/zero of=/swapadd bs=1024 count=1024000,即可在根目录建立一个名为swapadd,大小为1G的虚拟内存文件。然后输入命令mkswap /swapadd,即可将虚拟内存文件指定为虚拟内存。然后输入命令swapon /swapadd,即可启用虚拟内存。此时再用free -m命令即可以在Swap栏中查看到虚拟内存的大小。如果停止使用虚拟内存,可输入命令swapoff -v /swapadd,即可将生效的虚拟内存取消。建议服务器的虚拟内存不小于实际硬件内存的大小,不大于硬件内存大小的两倍。

  不过,阿里官网上也说了,由于开启swap分区会导致硬盘IO性能下降,因此阿里云服务器初始状态未配置swap,如果某些应用需要开启swap分区,再考虑开启。