linux下安装Oracle时交换空间不足的解决方法

转载 2014年12月23日 15:33:27
linux上安装Oracle时交换空间不足的解决办法
增加交换空间有两种方法:
严格的说,在系统安装完后只有一种方法可以增加swap,那就是本文的第二种方法,
至于第一种方法应该是安装系统时设置交换区。
1、使用分区:
在安装OS时划分出专门的交换分区,空间大小要事先规划好,启动系统时自动进行mount。
这种方法只能在安装OS时设定,一旦设定好不容易改变,除非重装系统。
2、使用swapfile:(或者是整个空闲分区)
新建临时swapfile或者是空闲分区,在需要的时候设定为交换空间,最多可以增加8个swapfile。
交换空间的大小,与CPU密切相关,在i386系中,最多可以使用2GB的空间。
在系统启动后根据需要在2G的总容量下进行增减。
这种方法比较灵活,也比较方便,缺点是启动系统后需要手工设置。
下面是运用swapfile增加交换空间的步骤:
涉及到的命令:
free ---查看内存状态命令,可以显示memory,swap,buffer cache等的大小及使用状况;
dd ---读取,转换并输出数据命令;
mkswap ---设置交换区
swapon ---启用交换区,相当于mount
swapoff ---关闭交换区,相当于umount
步骤:
1、创建swapfile:
root权限下,创建swapfile,假设当前目录为"/",执行如下命令:
# dd if=/dev/zero of=swapfile bs=1024 count=500000
则在根目录下创建了一个swapfile,名称为“swapfile”,大小为500M,也可以把文件输出到自己想要的任何目录中,
个人觉得还是直接放在根目录下比较好,一目了然,不容易误破坏,放在其他目录下则不然了;
命令中选项解释:
---of:输出的交换文件的路径及名称;
---bs:块大小,单位byte,一般为1k即1024个byte;
---count:总块数即空间总大小,单位为块即k;
---if:读取的源空闲空间,为什么是zero,不清楚,先固定这么写吧;
2、将swapfile设置为swap空间
# mkswap swapfile
3、启用交换空间,这个操作有点类似于mount操作(个人理解):
# swapon swapfile
至此增加交换空间的操作结束了,可以使用free命令查看swap空间大小是否发生变化;
4、如果不再使用空间可以选择关闭交换空间,这个操作有点类似于umount操作(个人理解)::
# swapoff swapfile
使用这种方法在每次系统启动时都需要手动设置、开启swapfile,比较麻烦,解决方法:
在 /etc/rc.d/rc.local 文件的末行下追加加以下内容:(编辑这个文件当然是用vi了~)
/sbin/swapon /swapfile
保存后退出,这样在系统启动后,swap空间就会自动加载了;
总结:在安装OS时一定要规划后swap大小,通常为内存的2倍,但是要考虑到以后增加内存的可能,所以可以考虑设的稍大一些,
 
想在虚拟机里面安装oracle10g,发现默认的swap交换空间不满足最低要求,因为我分配的物理内存是1G,那么就按照要求需要2G的swap交换空间,默认只有1G的交换空间。添加swap交换空间的步骤如下:  
第一步:确保系统中有足够的空间来用做swap交换空间,我使用的是KVM,准备在一个独立的文件系统中添加一个swap交换文件,在/opt/image中添加2G的swap交换文件
第二步:添加交换文件并设置其大小为2G,使用如下命令
[root@sense image]# dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000
过段时间就返回如下结果:
2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB) copied, 272.867 seconds, 7.7 MB/s
第三步:创建(设置)交换空间,使用命令mkswap
[root@sense image]# mkswap /opt/image/swap
Setting up swapspace version 1, size = 2097147 kB
第四步:检查现有的交换空间大小,使用命令free
[root@sense image]# free -m
total used free shared buffers cached
Mem: 1011 989 21 0 1 875
-/+ buffers/cache: 112 898
Swap: 1027 0 1027
或者检查meminfo文件
grep SwapTotal /proc/meminfo
第五步:启动新增加的2G的交换空间,使用命令swapon
[root@sense image]# swapon /opt/image/swap
第六步:确认新增加的2G交换空间已经生效,使用命令free
[[root@sense image]# free -m
total used free shared buffers cached
Mem: 1011 995 15 0 4 877
-/+ buffers/cache: 113 897
Swap: 3027 0 3027
或者检查meminfo文件
grep SwapTotal /proc/meminfo
第七步:修改/etc/fstab文件,使得新加的2G交换空间在系统重新启动后自动生效
在文件最后加入:
/opt/image/swap swap swap defaults 0 0

相关文章推荐

oracle11g安装过程提示swap size 检查失败问题

在linux上安装oracle11g,安装到Prerequisite Checks这一步的时候,swap size检查失败failed。...

windows server 2003 安装oracle 交换空间不足

我的电脑--》属性--》高级--》性能--》设置--》高级--》虚拟内存。调大就行。...

安装Oracle改变swap交换空间大小

1、检查当前的分区情况:     [root@localhost]#free -m 2、增加交换分区文件及大小,如果要增加2G大小的交换分区,则命令写法如下,其中的 count 等于想要的...

oracle在32位的Linux环境下SGA如何突破2GB内存限制的最终解决方案

32位机上内存无法支持4GB以上的说法太极端,如win2003 server就可以在32位机上认出8GB的内存。   因此Oracle的SGA在32位机上是可以突破2GB这个限制的,不过付...

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数。 1.   最基本的算法是,从小到大遍历: for (i = 2 to A -1)          if (i * B > A)...

利用K-means聚类算法根据经纬度坐标对中国省市进行聚类

K-means聚类算法是一种非层次聚类算法,在最小误差的基础上将数据划分了特定的类,类间利用距离作为相似度指标,两个向量之间的距离越小,其相似度就越高。程序读取全国省市经纬度坐标,然后根据经纬度坐标进...

Radon变换理论介绍与matlab实现--经验交流

本人最近在研究Radon变换,在查阅了各种资料之后在此写下个人的理解,希望与各位牛牛进行交流共同进步,也使得理解更加深刻些。 Radon变换的本质是将原来的函数做了一个空间转换,即,将原来的XY平...

CT图像重建技术

由于csdn贴图不方便,并且不能上传附件,我把原文上传到了资源空间CT图像重建技术 1.引言 计算机层析成像(Computed Tomography,CT)是通过对物体进行不同角度的射线投影测量而...

Matlab绘图-很详细,很全面

Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Ma...

linux查找目录下的所有文件中是否含有某个字符串

查找目录下的所有文件中是否含有某个字符串  find .|xargs grep -ri "IBM"  查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名  find .|xargs g...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux下安装Oracle时交换空间不足的解决方法
举报原因:
原因补充:

(最多只允许输入30个字)