关于ORACLE数据库服务器SWAP该设置成多大的建议值
概述
安装oracle或者GI的时候都对swap有一定要求,下面分享下怎么去根据服务器配置来设置swap的大小。
1、swap的作用
系统管理和DBA都知道,在Linux和UNIX系统上都有一个SWAP分区,该分区,例似于于Windows系统上的虚拟内存。
当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,临时转移到SWAP上,供当前运行的程序提供物理内存空间,当程序需要再访问被转移到了SWAP空间上的数据时,再从SWAP中恢复到物理内存中。从此工作原理不难看出来,SWAP要有,但是尽量不要使用,使用了就会发生内存交换,必然影响系统性能。
2、swap设置问题
有经验的系统管理员和DBA,往往会给系统建设一个适中大小的SWAP大小,但实际生产系统中,也经常发现有一些,因为SWAP设置过小的原因,而导致物理内存、SWAP全部耗尽,导致DOWN机的情况;也有发现一因为SWAP设置太大太大而浪费必要的存储空间的情况,SWAP到底该设置多大,可以参考一下ORACLE官方的建议。
3、ORACLE官方建议swap设置标准
对于运行ORACLE数据库的操作系统,ORACLE官方是有设置大小建议的,在此以从ORACLE 12C R1官方文档中提取的建议大小为例:
(1)ORACLE官方要求最小1GB的RAM,建议2GB或更大
(2)SWAP与RAM的大小配置关系
1)RAM为1-2GB时,SWAP大小建议为RAM大小的1.5倍 2)RAM为2-16GB时,SWAP大小建议与RAM大小相等 3)RAM大于16GB时,SWAP大小建议为16GB
4、大内存环境下SWAP大小配置建议
由于内存价格的快速下降,当前生产系统服务器的内存256GB、512GB已不足为奇,笔者建议16-64GB物理内存情况下,SWAP与物理内存“相当”的大小,大于64GB的大内存情况下,建议一般配置为物理内存大小的一半或相当,具体大小可以根据业务特性依经验做判断。在生产过程中持续观察SWAP使用情况可以适当调整SWAP大小。
后面会分享更多关于devops和DBA方面的内容,感兴趣的朋友可以关注下!!
最后附上朋友的一张支付宝活动福利,扫一扫瓜分15亿!