场景描述:虚拟机上linux环境下安装oracle11g数据库。
Linux版本为:CentOS7,Oracle版本为:linux.x64_11gR2
问题描述:在oracle安装到Prerequisite Checks这一步的时候,出现两个问题。一个是swap size检查失败。
错误截图
由错误截图可知,oracle在安装过程中进行检查系统环境的时候,关于swap(交换分区)的大小预期为3.74G,而系统实际上只有1.94G。
因此我们需要增加大约2G的系统swap才符合oracle的要求。
-----------------------百度百科关于 swap的解释----------------------------------------
swap:Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。Android是基于Linux的操作系统,所以也可以使用Swap分区来提升系统运行效率。
交换分区,英文的说法是swap,意思是“交换”、“实物交易”。它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行,和Windows的虚拟内存(pagefile.sys)的作用是一样的。----------------------------------------------------------------------------------------------------
解决办法:增加大约2G左右的swap!
步骤如下:
1、使用root用户,在/tmp(随意),下执行下面语句
dd if=/dev/zero of=swapfree bs=32k count=65515
(增加swap大小为bs*count,bs为block,count为数量)
上图可以看出,通过这个语句创建了一个2G的文件swapfree
2、将创建的文件用做交换分区执行语句:mkswap swapfree3、开启这个交换空间
执行语句:swapon swapfree4、通过free命令查看,交换空间在原来交换空间的基础上增加了2G