Oracle安装Linux内核参数配置详解Centos6.4+11GR2

16 篇文章 0 订阅
1、11GR2 Oracle安装需要的内核参数如下:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912

kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

2、参数详解如下
fs.aio-max-nr            
Maximum: 1048576
Note: This value limits concurrent outstanding requests and should be set to avoid I/O subsystem failures.
该参数表示同时可以拥有的的异步IO请求数目。1048576 即 1024*1024 也就是 1024K 个。
 
fs.file-max              
系统允许打开的文件数。

kernel.shmall
控制共享内存页数 。Linux 共享内存页大小为4KB, 共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是
16GB/4KB=16777216KB/4KB=4194304 (页),也就是64Bit 系统下16GB 物理内存,设置 kernel.shmall = 4194304 才符合要求。
这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZE 和SGA_TARGET。这个值需要根据实际共享内存值做调整。

kernel.shmmax
Minimum: 536870912
Maximum: A value that is 1 byte less than 4 GB, or 4294967295
Recommended: More than half the physical memory

SHMMAX Available physical memory Defines the maximum allowable size of one shared memory segment.
The SHMMAX setting should be large enough to hold the entire SGA in one shared memory segment.
A low setting can cause creation of multiple shared memory segments which may lead to performance degradation.
shmmax 是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值,shmmax 设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,
设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降 。一般设置为物理内存总大小的一半。
这个值的设置应该大于SGA_MAX_TARGET或MEMORY_MAX_TARGET的值,因此对于安装Oracle数据库的系统,shmmax的值应该比内存的二分之一大一些。
/dev/shm这个默认为物理内存一半,如果做调整,需要在/etc/fstab中指定size=mem_size,之后mount -o remount /dev/shm
ipcs  -sa 可以看到共享内存段个数.

kernel.shmmni
这个内核参数用于设置系统范围内共享内存段的最大个数。该参数的默认值是 4096 。这一数值已经足够,通常不需要更改 。

kernel.sem = 610 86620 100 142 
从左到右分别为SEMMSL、SEMMNS、SEMOPM和SEMMNI。
1)SEMMSL:设置每个信号灯组中信号灯最大数量,推荐的最小值是250。
   对于系统中存在大量并发连接的系统,推荐将这个值设置为PROCESSES初始化参数加10。
2)SEMMNS:设置系统中信号灯的最大数量。操作系统在分配信号灯时不会超过LEAST(SEMMNS,SEMMSL*SEMMNI)。
   事实上,如果SEMMNS的值超过了SEMMSL*SEMMNI是非法的,因此推荐SEMMNS的值就设置为SEMMSL*SEMMNI。
   Oracle推荐SEMMNS的设置不小于32000,假如数据库的PROCESSES参数设置为600,则SEMMNS的设置应为:
   SQL> select (600+10)*142 from dual;=> (600+10)*142=86620

3)SEMOPM:设置每次系统调用可以同时执行的最大信号灯操作的数量。
   由于一个信号灯组最多拥有SEMMSL个信号灯,因此有推荐将SEMOPM设置为SEMMSL的值。
   Oracle验证的10.2和11.1的SEMOPM的配置为100。
4)SEMMNI:设置系统中信号灯组的最大数量。 Oracle10g和11g的推荐值为142,最小值为128。

net.ipv4.ip_local_port_range
Minimum: 9000
Maximum: 65500
表示端口的范围

net.core.rmem_default = 262144        //表示接收套接字缓冲区大小的缺省值(以字节为单位)。
net.core.rmem_max = 4194304           //表示接收套接字缓冲区大小的最大值(以字节为单位)。
net.core.wmem_default = 262144        //表示发送套接字缓冲区大小的缺省值(以字节为单位)。
net.core.wmem_max = 1048586           //表示发送套接字缓冲区大小的最大值(以字节为单位。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值