Oracle Study之案例--安装Oracle内核参数配置

在Linux系统下,安装Oracle之前,除了检查操作系统的硬件和软件是否满足安装需要之外,一个重点就是修改内核参数,其中最主要的是和内存相关的参数设置。

案例分析:

查看当前系统的内核参数配置:

[root@rh6 ~]# sysctl -p

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key

error: "net.bridge.bridge-nf-call-iptables" is an unknown key

error: "net.bridge.bridge-nf-call-arptables" is an unknown key

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

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

SHMMAX参数:

Linux进程可以分配的单独共享内存段的最大值。一般设置为内存总大小的一半。这个值的设置应该大于SGA_MAX_TARGET或MEMORY_MAX_TARGET的值,因此对于安装Oracle数据库的系统,shmmax的值应该比内存的二分之一大一些。

# grep MemTotal /proc/meminfo

# cat /proc/sys/kernel/shmmax

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

# echo 21474836480 > /proc/sys/kernel/shmmax

# sysctl -w kernel.shmmax=21474836480

# echo "kernel.shmmax=21474836480" >> /etc/sysctl.conf

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

SHMMNI参数:

设置系统级最大共享内存段数量。Oracle10g推荐最小值为4096,可以适当比4096增加一些。

# cat /proc/sys/kernel/shmmni

# echo 4096 > /proc/sys/kernel/shmmni

# sysctl -w kernel.shmmni=4096

# echo "kernel.shmmni=4096" >> /etc/sysctl.conf

检查和设置方法如上,这和shmmax的修改方式没有区别,不在赘述。

SHMALL参数:

设置共享内存总页数。这个值太小有可能导致数据库启动报错。很多人调整系统内核参数的时候只关注SHMMAX参数,而忽略了SHMALL参数的设置。这个值推荐设置为物理内存大小除以分页大小。

# getconf  PAGE_SIZE

通过getconf获取分页的大小,用来计算SHMALL的合理设置值:

SQL> select 32*1024*1024*1024/4096 from dual;

32*1024*1024*1024/4096

----------------------

8388608

对于32G的内存,4K分页大小的系统而言,SHMALL的值应该设置为8388608。

# cat /proc/sys/kernel/shmall

# echo 8388608 > /proc/sys/kernel/shmall

# sysctl -w kernel.shmall=8388608

# echo " kernel.shmall=8388608" >> /etc/sysctl.conf

查询和设置方法如上。信号灯semaphores是进程或线程间访问共享内存时提供同步的计数器。SEMMSL参数:

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

SEMMNI参数:

设置系统中信号灯组的最大数量。Oracle10g和11g的推荐值为142。

SEMMNS参数:

设置系统中信号灯的最大数量。操作系统在分配信号灯时不会超过LEAST(SEMMNS,SEMMSL*SEMMNI)。事实上,如果SEMMNS的值超过了SEMMSL*SEMMNI是非法的,因此推荐SEMMNS的值就设置为SEMMSL*SEMMNI。Oracle推荐SEMMNS的设置不小于32000,假如数据库的PROCESSES参数设置为600,则SEMMNS的设置应为:

SQL> select (600+10)*142 from dual;

(600+10)*142

------------

86620

SEMOPM参数:

设置每次系统调用可以同时执行的最大信号灯操作的数量。由于一个信号灯组最多拥有SEMMSL个信号灯,因此有推荐将SEMOPM设置为SEMMSL的值。Oracle验证的10.2和11.1的SEMOPM的配置为100。

通过下面的命令可以检查信号灯相关配置:

# cat /proc/sys/kernel/sem

250 32000 100 128

对应的4个值从左到右分别为SEMMSL、SEMMNS、SEMOPM和SEMMNI。修改方法为:

# 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

linux安装oracle 操作系统内核参数 aio,Oracle Study之案例--安装Oracle内核参数配置相关推荐

  1. 非抢占式优先级调度算法_华为鸿蒙操作系统内核真面目之抢占式和非抢占式内核...

    华为鸿蒙操作系统内核真面目之抢占式和非抢占式内核 众所周知华为鸿蒙操作系统内核是Linux内核.而Linux内核即是抢占式内核也是非抢占式内核.设置软件优先级在优先级在0-99之间是抢占式优先级.设置 ...

  2. Linux云计算架构-系统调优【CPU、IO、网络、内核参数调优】

    文章目录 Linux云计算架构-系统调优[CPU.IO.网络.内核参数调优] 1. CPU调优 2. IO调优 3. 网络调优 3.1 网络冗余(主备模式) 3.2 负载均衡模式 4. 内核参数调优 ...

  3. linux安装oracle 操作系统内核参数 aio,Linux安装Oracle 11G过程(测试未写完)

    一.简介 Oracle数据库在系统运维中的重要性不言而喻,通过熟悉Oracle的安装来加深对操作系统和数据库知识的了解.Linux安装Oracle前期修改linux内核参数很重要,其实就是linux下 ...

  4. linux查看当前操作系统内核和版本

    1查看当前操作系统内核和版本 [root@wu ~]# uname -a [root@wu ~]# cat /etc/issue [root@wu ~]# cat /etc/redhat-releas ...

  5. oracle 内核参数设置

    oracle 内核参数设置 共享内存的相关内核参数设置 Kernel.shmmax shmmax 指的是单个共享内存段的最大尺寸,单位为字节 oracle 建议,kernel.shmmax的值不能少于 ...

  6. ORACLE内核参数

    服务器内存为4G的情况下 修改/etc/sysctl.conf文件 (ROOT账户) kernel.shmmax = 2147483648 //公式:2G*1024*1024*1024=2147483 ...

  7. linux 重新安装内核,升级操作系统内核(不重新安装UltraPath)

    升级操作系统内核,暂时不重新启动操作系统. 执行cat /etc/UltraPath.packages.info命令,查看"t140s_solutionType"字段. [root ...

  8. 华为 linux 内核版本升级,升级操作系统内核(不重新安装UltraPath)

    升级操作系统内核,暂时不重新启动操作系统. 执行cat /etc/UltraPath.packages.info命令,查看"t140s_solutionType"字段. [root ...

  9. linux查内核参数命令,linux 下查看cpu位数 内核等参数命令

    linux 下查看cpu位数 内核等参数命令. # uname -a Linux euis1 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i6 ...

最新文章

  1. mysqld命令查看数据库目录
  2. c语言程序报告英汉词典,C语言电子英汉词典程序设计报告-自动化1203-李煜明.docx...
  3. 归纳:数据库设计的六个阶段详解(有这一篇就够了)
  4. FJOI2018二试游记
  5. excel如何把顺序倒过来_Excel 中的计算运算符和优先顺序级别
  6. 进击的美少女!浙大学姐两年发14篇论文! 一作10篇,顶刊4篇!
  7. 日语学习-多邻国-饮食
  8. 构造方法与对象的创建 java 1614780813
  9. 数据库基础:MySQL必备的三个工具
  10. 【论文分享】ACL 2020 信息抽取与问答系统
  11. vue ,solt 插值组件新内容
  12. Java实现Excel文件导出或者下载
  13. 计算机语言处理程序有三种,程序设计语言有哪三种
  14. Pandas的read_excel()函数读取excel时遇到身份证含空值(pandas识别nan为float类型)自动变成科学计数法的解决办法
  15. 红贝应用架构配置式应用开发示例
  16. Mysql数据库用户密码暴力破解
  17. C# 如何在Word文档中插入艺术字
  18. 据说大学录取率是90%,我对大米的期许是考上高中
  19. 神经网络——最易懂最清晰的一篇文章
  20. Linux学习:文件、用户、磁盘管理总结

热门文章

  1. 红外热成像拥抱无人机 迸发安防救援新活力
  2. 一些适用于前端开发的 Atom 插件
  3. 【APUE】Chapter17 Advanced IPC sign extension 结构体内存对齐
  4. iOS9 App Thinning(应用瘦身)功能介绍
  5. 解决CSS移动端1px边框问题
  6. Bootstrap – 1.认识
  7. 字体中字号,磅值和mm之间的转换
  8. 收藏:Sql类型与.Net(C#)类型对应关系
  9. Linux - alias 定义的变量
  10. asp.net mvc中用 log4net记录日志到数据库中