oracle 设置 shmmax,Oracle的kernel.shmmax和kernel.shmall设置

Oracle的kernel.shmmax和kernel.shmall设置

不会推车的娘们 2019-12-04 12:02:30 1135 收藏 3

分类专栏: linux ORACLE 文章标签: sysctl 系统内核 oracle操作

版权

1.  kernel.shmmax :

是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的 SGA , 设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及 ServerProcess 创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低 ( 在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响 ) ,但是其他时候都不会有影响。

官方建议值:

32 位 linux 系统:可取最大值为 4GB ( 4294967296bytes ) -1byte ,即 4294967295 。建议值为多于内存的一半,所以如果是 32 为系统,一般可取值为 4294967295 。 32 位系统对 SGA 大小有限制,所以 SGA 肯定可以包含在单个共享内存段中。

64 位 linux 系统:可取的最大值为物理内存值 -1byte ,建议值为多于物理内存的一半,一般取值大于 SGA_MAX_SIZE 即可,可以取物理内存 -1byte 。

内存为 12G 时,该值为 12*1024*1024*1024-1 = 12884901887

内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183

内存为 32G 时,该值为 32*1024*1024*1024-1 = 34359738367

内存为 64G 时,该值为 64*1024*1024*1024-1 = 68719476735

内存为 128G 时,该值为 128*1024*1024*1024-1 = 137438953471

2.  kernel.shmall :

该参数控制可以使用的共享内存的总页数。 Linux 共享内存页大小为 4KB, 共享内存段的大小都是共享内存页大小的整数倍。

一个共享内存段的最大大小是 16G ,那么需要共享内存页数是 16GB/4KB==4194304 (页),

当内存为 12G 时, kernel.shmall = 3145728

当内存为 16G 时, kernel.shmall = 4194304

当内次为 32G 时, kernel.shmall = 8388608

当内存为 64G 时, kernel.shmall = 16777216

当内存为 128G 时, kernel.shmall = 33554432

配置内核变量

/etc/sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

# shmall、shmmax参数要根据实际内存数进行调整,不然安装会有问题,静态安装很容易忽略

# 图形化安装在检测是将会提示

# 官网建议:

kernel.shmall = 2468829

# 官网建议:以字节为单位的物理内存(RAM)大小的一半

kernel.shmmax = 12640407552

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

生效

$ /sbin/sysctl -p

————————————————

版权声明:本文为CSDN博主「不会推车的娘们」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/shmily_lsl/java/article/details/103384366

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值