我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle的kernel.shmmax和kernel.shmall设置

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle的kernel.shmmax和kernel.shmall设置

Oracle的kernel.shmmax和kernel.shmall设置

Oracle的kernel.shmmax和kernel.shmall设置
不会推车的娘们 2019-12-04 12:02:30 1135 收藏 3
分类专栏: linux ORACLE 文章标签: sysctl 系统内核 oracle操作
版权

  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

  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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle的kernel.shmmax和kernel.shmall设置

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Oracle的kernel.shmmax和kernel.shmall设置

Oracle的kernel.shmmax和kernel.shmall设置 不会推车的娘们 2019-12-04 12:02:30 1135 收藏 3 分类专栏: linux ORACLE 文章标签: sysctl 系统内核 oracle操作 版权 1.  ke
Oracle的kernel.shmmax和kernel.shmall设置
2021-01-19

如何设置和管理Oracle口令

设置和管理Oracle口令是Oracle数据库管理中非常重要的一项任务。一个安全的口令策略能够保护数据库的安全,防止未经授权的访问。本文将介绍如何在Oracle数据库中设置和管理口令,并提供一些具体的代码示例,帮助读者更好地理解和应用。1
如何设置和管理Oracle口令
2024-03-02

oracle中spool的参数怎么设置

在Oracle中,spool命令用于将SQL语句的结果输出到文件中。以下是spool命令的一般语法:SPOOL file_path在这里,file_path是要输出结果的文件的路径。使用spool命令时,可以设置一些参数来控制输出的行为。
oracle中spool的参数怎么设置
2024-04-09

oracle设置密码复杂度及设置超时退出的功能

目录查看oracle是否启用密码复杂度;关闭密码复杂性校验查看密码有效期:oracle密码设置为180天oracle设置密码复杂度设置oracle超时退出的功能;查看是否开启oracle的审计功能;总结查看oracle是否启用密码复杂度;
2022-06-28

oracle数据表的编码怎么设置

在Oracle中,数据表的编码是通过设置数据库的字符集来实现的。可以按照以下步骤设置数据表的编码:1. 首先,使用ALTER DATABASE语句修改数据库的字符集。例如,如果要将数据库的字符集设置为UTF8,可以执行以下命令:```sql
2023-09-05

oracle外键设置的方法有哪些

在Oracle中设置外键可以通过以下几种方法:1、使用CREATE TABLE语句创建表时定义外键约束:CREATE TABLE table1 (id NUMBER PRIMARY KEY,name VARCHAR2(50));CRE
oracle外键设置的方法有哪些
2024-05-23

编程热搜

目录