場景描述:虛擬機上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 swapfree

3、開啟這個交換空間
執行語句:swapon swapfree
4、通過free命令查看,交換空間在原來交換空間的基礎上增加了2G

