内存 – 蓝月网络 https://lanyueer.com 专注于WordPress外贸建站,主题插件汉化、配置 Sat, 13 Dec 2025 15:40:57 +0000 zh-CN hourly 1 在CentOS中添加Swap交换文件,防止内存不足时MYSQL崩溃 https://lanyueer.com/centos-add-swap/ Sun, 25 Jun 2017 05:51:52 +0000 https://lanyueer.com/?p=959 1.swap概述 Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要…

在CentOS中添加Swap交换文件,防止内存不足时MYSQL崩溃,首发于蓝月网络

]]>
1.swap概述

Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。 其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。

2.创建swap

首先查看当前的内存和swap 空间大小(默认单位为k, -m 单位为M):

  1. free -m


此处可以看到总内存是503M,SWAP不存在。

查看swap信息,包括文件和分区的详细信息

  1. # swapon -s

或者

  1. # cat /proc/swaps

如果都没有,我们就需要手动添加交换分区。注意,OPENVZ架构的VPS是不支持手动添加交换分区的。

添加交换空间有两种选择:添加一个交换分区或添加一个交换文件。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用, 则添加交换文件。

一、增加swap交换文件

1、使用dd命令创建一个swap交换文件

  1. dd if=/dev/zero of=/home/swap bs=1024 count=1024000

这样就建立一个/home/swap的分区文件,大小为1G。

2、制作为swap格式文件:

  1. mkswap /home/swap

3、再用swapon命令把这个文件分区挂载swap分区

  1. /sbin/swapon /home/swap

我们用free -m命令看一下,发现已经有交换分区了。

但是重启系统后,swap分区又变成0了。

4、为防止重启后swap分区变成0,要修改/etc/fstab文件

  1. vi /etc/fstab

在文件末尾(最后一行)加上

  1. /home/swap swap swap default 0 0

这样就算重启系统,swap分区还是有值。

删除swap交换文件

1、先停止swap分区

  1. /sbin/swapoff /home/swap

2、删除swap分区文件

  1. rm -rf /home/swap

3、删除自动挂载配置命令

  1. vi /etc/fstab

这行删除

  1. /home/swap swap swap default 0 0

这样就能把手动增加的交换文件删除了。
注意:
1、增加删除swap的操作只能使用root用户来操作。
2、装系统时分配的swap分区貌似删除不了。
3、swap分区一般为内存的2倍,但最大不超过2G

二、使用分区来做SWAP(虚拟内存).

1 使用fdisk来创建交换分区(假设 /dev/sdb2 是创建的交换分区)
2 使用 mkswap 命令来设置交换分区:

  1. # mkswap /dev/sdb2

3 启用交换分区:

  1. # swapon /dev/sdb2

4 写入/etc/fstab,以便在引导时启用:

  1. /dev/sdb2 swap swap defaults 0 0

删除交换分区
步骤如下:
1、先停止swap分区

  1. /sbin/swapoff /dev/sdb2

2、删除自动挂载配置命令

  1. vi /etc/fstab

这行删除

  1. /dev/sdb2 swap swap defaults 0 0

这样就能把手动增加的交换分区删除了。

在CentOS中添加Swap交换文件,防止内存不足时MYSQL崩溃,首发于蓝月网络

]]>
WordPress内存耗尽错误解决办法 https://lanyueer.com/wordpress-memory-exhausted-error-solutions/ Sun, 08 Nov 2015 04:58:09 +0000 http://lanyueer.com/?p=442 WordPress程序消耗内存,插件,主题也都消耗内存,在WordPress新版本(WordPress 3.0…

WordPress内存耗尽错误解决办法,首发于蓝月网络

]]>
WordPress程序消耗内存,插件,主题也都消耗内存,在WordPress新版本(WordPress 3.0+)使用中会消耗更多的内存,PHP程序在执行过程中没有足够的内存,你的网站就可能出现这样的错误:

Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 1203208 bytes) in /home/*****/public_html/wp-admin/includes/class-pclzip.php on line 4215

在错误信息中,有两个关键的点,67108864 bytes和1203208 bytes,换算到M就是64M和1.1M,每次执行PHP需要分配1.1M的内存,但是由于整体消耗内存量太大,默认64M的最大内存不够用,被耗尽了,根据WordPress官方给出的解决办法,我们只要在wp-config.php中加入如下代码:

  1. define(‘WP_MEMORY_LIMIT’, ’128M’);

至于为什么是128M,这个就看你个人了,当然超过64M都是可以的。

以上的基础是,服务器本身的硬件不错,然后看两点:1,服务器的配置与性能优化;2,服务器上放置的用户数量。

如果你的空间支持.ini,可以通过修改php.ini实现,以下两种方法任选其一

1、首先在public_html 目录创建文件 php.ini,添加以下代码:
memory_limit = 64M
然后在根目录下修改.htaccess文件,添加下面代码:
suPHP_ConfigPath /home/username/public_html/

2、同样是修改php.ini
先在网站根目录下,建立一个php.ini文件,写入下面这句:
memory_limit = 64M
接着再到网站根目录下修改.htaccess这个文件,写入下面这句:
SetEnv PHPRC /home/host1/public_html/usr1/
(unix path to the directory where php.ini is)
(keep the slashes)
注:以上代码中的”64M”可根据需要适当调整。

WordPress内存耗尽错误解决办法,首发于蓝月网络

]]>