安装Oracle时在Linux上设置内核参数

SHMMAX参数:Linux进程可以分配置的单独共享内存段的最大值。

 

# grep MemTotal /proc/meminfo
# cat /proc/sys/kernel/shmmax


上面的命令是检查系统内存的大小,以及当shmmax的设置。

 

 

# echo 21474836480 > /proc/sys/kernetbl/shmmax
# sysctl -w kernel.shmmax=21474836480
# echo "kernel.shmmax=21474836480" >> /etc/sysctl.conf


这是设置shmmax参数的几种方法,这三种方式都可以将shmmax设置为20G。前两种方式类似alter system set scope=memory, 而第三种方式则类似于alter system set scope=spfile,这个参数的设置可以不重启数据库,但是为了确保下次重启后设置值仍然生效,第三种方式是必不可少的,采用第三种方式需要执行sysctl -t或重启。

 

 

SHMMNI参数:设置系统最大共享内存数量。

Oracle10g推荐最小值为4096。

 

# cat /proc/sys/kernel/shmmni
# echo 4096 > /proc/sys/kernel/shmmni
# sysctl -w kernel.shmmni=4096
# echo "kernel.shmmni=4096" >> /etc/sysctl.conf


SHMALL参数:设置共享内存总页数。推荐值为物理内存大小除以分页大小。

 

 

信号灯semaphore是进程或线程间访问共享内存时提供同步的计数器。

SEMMSL参数:设置每个信号灯组中信号灯最大数量,推荐的最小值是250.对于系统中存在大量并发连接的系统,推荐将这个值设置为processes初始化参数加10。

SEMMNI参数:设置系统中信号灯的最大数量。推荐值为142.

SEMMNS参数:设置系统中信号灯的最大数量,操作系统在分配信号灯时不会超过Least(SEMMNS, SEMMNI*SEMMSL),事实上,如果SEMMNS的值超过SEMMSL*SEMMNI是非法的,因此推荐SEMMNS的值就设置为SEMMSL*SEMMNI.

SEMOPM参数:设置每次系统调用可以同时执行的最大信号灯的数量。由于一个信号灯组最多拥有SEMMSL个信号灯,因此推荐将SEMOPM设置为SEMMSL的值。

 

# echo 610 86620 100 142 > /proc/sys/kernel/sem
# sysctl -w kernel.sem="610 86620 100 142"
# echo "kernel.sem=610 86620 100 142" >> /etc/sysctl.conf


对应的4个值从左到右分别为SEMMSL SEMMNS SEMOPM SEMMNI

 

最后欢迎大家访问我的个人网站:1024s

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值