oracle 安装要用到的内存相关参数详解

在这里,对oracle在/etc/sysctl 要用到的参数值做个简要的解释和说明。

(1)kernel.shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。Linux 2.4/2.6缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为和实际内存一样大即可。
(2)kernel.shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改。
(3)kernel.shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改。
(4)kernel.sem:该参数表示设置的信号量。
(5)fs.file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。
(6)net.ipv4.ip_local_port_range: 表示端口的范围,为指定的内容。
(7)net.core.rmem_default: 表示接收套接字缓冲区大小的缺省值(以字节为单位)。        
(8)net.core.rmem_max: 表示接收套接字缓冲区大小的最大值(以字节为单位)           
(9)net.core.wmem_default: 表示发送套接字缓冲区大小的缺省值(以字节为单位)。
(10)net.core.wmem_max: 表示发送套接字缓冲区大小的最大值(以字节为单位)。

 

修改好内核以后,执行sysctl -p命令使新的配置生效。

 

注意:
 对于32位系统,一页=4k,也就是4096字节
 kernel.shmall = 4096  就是 4096*4k/1024/1024 = 15M 就是说可用共享内存一共 15M,数据库当然会起不来啦。
 原值为 kernel.shmall = 4096
 
设置的一般规律
 
kernel.shmall = 2097152    ---内存8G
 kernel.shmall = 4194304    ---内存16G
 kernel.shmall = 8388608    ---内存32G
 kernel.shmall = 10485760    ---内存40G
 kernel.shmall = 12582912    ---内存48G
 kernel.shmall = 14680064    ---内存56G
 kernel.shmall = 16777216    ---内存64G
 kernel.shmall = 20971520    ---内存80G
 kernel.shmall = 25165824    ---内存96G
 kernel.shmall = 33554432    ---内存128G
 kernel.shmall = 50331648    ---内存192G
 kernel.shmall = 67108864    ---内存256G
 

 

 

你可能感兴趣的:(oracle,linux)