ORACLE在Linux下内核参数设置

来源:互联网 发布:汪清县淘宝特产 编辑:程序博客网 时间:2024/06/06 17:38

ORACLE的Linux内核参数设置:

服务器内存为4G的情况下
修改/etc/sysctl.conf文件 (ROOT账户)

kernel.shmmax = 2147483648
    //公式:2G*1024*1024*1024=2147483648(字节)
    //表示最大共享内存段,一般为物理内存的一半(单位:字节)。 shmmax 设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降 。
    //所以一般来说,1-4G 的物理内存,可以直接设置shmmax 为最大物理内存即可,那么SGA 肯定在一个共享内存段中,32Bit Linux 系统物理内存大于4G 的设置为4G 即可 。总之,一般设置shmmax >=SGA (32Bit 系统是否支持到1.7G 以上SGA 需要注意) 。如果是64Bit 的Linux 操作系统,shmmax 设置为大于SGA_MAX_SIZE 即可。

kernel.shmmni=4096
    //表示共享内存段的最大数量,固定大小4096KB足够(由于32位操作系统默认一页为4K)。

kernel.shmall=1048576
    //公式:4G*1024*1024/4K = 1048576(页)
    //表示所有共享内存页大小(单位:页)。Linux 共享内存页大小为4KB, 共享内存段的大小都是共享内存页大小的整数倍。
    // 一个共享内存段的最大大小是16G,那么需要共享内存页数是 16GB/4KB=16777216KB/4KB=4194304 (页)。

kernel.sem=250 32000 100 128
    //4个参数依次是SEMMSL:每个用户拥有信号量最大数,SEMMNS:系统信号量最大数,SEMOPM:每次semopm系统调用操作数,SEMMNI:系统辛苦量集数最大数。这4个参数为固定内容大小

fs.file-max=65536
    //file-max固定大小65536

net.ipv4.ip_local_port_range=1024 65000
    //ip_local_port_range表示端口的范围,为指定的内容

以上步骤做完执行 /sbin/sysctl -p 使内核生效

验证参数(root账户执行):
#/sbin/sysctl -a | grep shm
#/sbin/sysctl -a | grep sem
#/sbin/sysctl -a | grep file-max
#/sbin/sysctl -a | grep ip_local_port_range

 

原创粉丝点击