一、swap概念&设置大小参考值
当Linux系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。
内存大小 | swap大小 |
<4G | 2G |
4G~16G | 4G |
16G~64G | 8G |
64G~256G | 16G |
256G~512G | 32G |
Oralce公司对于安装Oracle 11g数据库对Linux操作系统的官方推荐值:
物理内存大小 | swap大小 |
1G~2G | 物理内存1.5倍 |
2G~16G | 等于物理内存 |
>16G | 16G |
二、查询内存大小&当前swap大小
查看内存大小:cat /proc/meminfo |grep MemTotal
swap大小:free -g
三、调整swap大小
3.1、以root权限登录SSH,键入如下命令创建4G(我的内存是2G)的swap文件(1024 * 1024MB*4G = 4194304)
dd if=/dev/zero of=/swapfile1 bs=1024 count=4194304
3.2、创建Linux交换文件
mkswap /swapfile1
3.3、立即激活 /swapfile1交换文件
swapon /swapfile1
3.4、设置系统自激活交换文件。编辑 /etc/fstab文件,并增加如下第二行代码
vi /etc/fstab
/swapfile1 swap swap defaults 0 0
vi /etc/sysctl.conf增加以下内容
vm.swappiness=10
3.5、重启系统reboot,重启后使用free -m查看swap大小
现在swap已经是4G了。