«

Oracle-11g安装过程提示swap size 检查失败问题

指尖二进制 • 1 年前 • 934 次点击 • ORACLE


场景描述:在公司服务器上安装oracle11g数据库。
Linux版本:Linux Server release 6.8
Oracle版本:p10404530_112030_Linux-x86-64_1of7
p10404530_112030_Linux-x86-64_2of7

size检查失败,一个是Packages检查失败。关于Packages依赖包检查失败的问题不在描述。直接yum安装。

[root@Redhat-db-xnjc-85 tmp]# free -h
             total       used       free     shared    buffers     cached
Mem:           31G       4.3G        27G       1.1M        53M       3.6G
-/+ buffers/cache:       618M        30G
Swap:         7.8G         0B       7.8G


此图来源于网络:
显示环境是:
由错误截图可知,oracle在安装过程中进行检查系统环境的时候,关于swap(交换分区)的大小预期为16G,而系统实际上只有7.8G。
因此我们需要增加大约9G的系统swap才符合oracle的要求。

----------------------------------------百度百科关于 swap的解释----------------------------------------

swap:Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
交换分区,英文的说法是swap,意思是“交换”、“实物交易”。它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行,和Windows的虚拟内存(pagefile.sys)的作用是一样的。


解决办法:增加大约9G左右的swap!
步骤如下:
1:使用root用户,在/tmp(随意),下执行下面语句
(增加swap大小为bs*count,bs为block,count为数量)

[root@Redhat-db-xnjc-85 tmp]# dd if=/dev/zero of=swapfile bs=1M count=9216
9216+0 records in
9216+0 records out
9663676416 bytes (9.7 GB) copied, 14.7141 s, 657 MB/s

通过上面回显可以看出,通过这个语句创建了一个9G的文件swapfree

2:将创建的文件用做交换分区
执行语句:mkswap swapfree

[root@Redhat-db-xnjc-85 tmp]# mkswap swapfile 
mkswap: swapfile: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 9437180 KiB
no label, UUID=cbbed59c-b6d0-4d5b-94cd-10fc53b44a12

3:开启这个交换空间
执行语句:swapon swapfree

[root@Redhat-db-xnjc-85 tmp]# swapon swapfile

4:通过free命令查看,交换空间在原来交换空间的基础上增加了9G

[root@Redhat-db-xnjc-85 tmp]# free -h
             total       used       free     shared    buffers     cached
Mem:           31G        13G        17G       1.1M        53M        12G
-/+ buffers/cache:       895M        30G
Swap:          16G         0B        16G

5:在/etc/fstab中加入下面两行,设置此交换分区开机启动

/tmp/swapfree swap swap defaults 0 0

设置完成后,在oracle安装界面点击check again,错误提示消失。

还没收到回复