`

谈谈ORACLE内核参数

 
阅读更多

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

kernel.shmmax = 2147483648
//公式:2G*1024*1024*1024=2147483648(字节)
//表示最大共享内存,如果小的话可以按实际情况而定,一般为物理内存的一半(单位:字节)

kernel.shmmni=4096
//表示最小共享内存固定4096KB(由于32位操作系统默认一页为4K)

kernel.shmall=1048576
//公式:4G*1024*1024/4K = 1048576(页)
//表示所有内存大小(单位:页)

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

1 、与 oracle 相关的信号量和共享内存段参数

 

   一般 unix 系统中和信号量相关的是三个参数 SEMMNI SEMMSL SEMMNS 。他们相互关联决定系统可以分配的信号量。 Oracle 使用信号量完成内部进程之间的通信。

 

   关于共享内存段使用 shmmx 参数进行总体控制。它指定了系统可以分配的共享内存段最大大小,实际并没有分配那么多只是给出一个可以使用的最大限制。

 

   对于类核参数的修改必须要重新启动系统之后才会生效。
2
、出现 信号量和共享内存段相关问题的情况

 

   oracle 只有在 startup nomount 的时候才会请求 os 的这些资源,用于建立 SGA 和启动后台进程。

 

   有些情况下因为 oracle 崩溃之后 os 没有清除 oracle 分配的 SGA ,也可能造成共享内存段不足,需要人工清除。

 

3 、如何解决相关的问题

 

   你可以简单的修改 init 参数减少 oracle 对共享内存段和信号量的需求。

 

   对于控制信号量的三个参数 SEMMNI SEMMSL SEMMNS 。最终可以使用的信号量由下面公式 提取 (semmsl * semmni) 或者 semmns 中最小的值。

 

    例如在 linux . 进入目录/proc/sys/kernel;用cat命令或more命令查看semaphore当前参数的值:
cat sem
命令运行后将会出现如下的结果:
250 32000 32 128
其中, 250 是参数SEMMSL的值,32000是参数SEMMNS的值, 32是参数SEMOPM的值,而128则是参数SEMMNI的值。250*128=32000

 

对于 oracle7 需要信号量的设置等于 init processes 的设置。对于 8i 9i 需要等于 processes*2

 

对于信号量参数的设定一定要小心,因为不正确的设置可能会让系统使用默认值。这个值一般比 oracle 系统要求的低。在 HP unix 上遇到过这样的问题,当时在参数配置的时候指定两个不同的 sem-mni 造成系统使用默认的设置。

 

对于共享内存段,系统的设置至少要等于 SGA 的大小。

分享到:
评论

相关推荐

    Linux内核参数调整及ORACLE调优参数

    Linux内核参数调整及ORACLE调优参数

    oracle11g设置内核参数和limit的增强

    ### Oracle 11g R2 for Linux:内核参数与Limit自动配置详解 #### 引言 Oracle数据库作为全球领先的企业级数据库管理系统之一,在不同操作系统环境下有着广泛的应用。随着技术的发展,Oracle也在不断地进行优化与...

    Oracle内核技术揭秘_PDF电子书下载 带书签目录 高清完整版.pdf

    7. 数据库调优:Oracle内核提供各种参数和配置,允许DBA通过调整这些参数来优化数据库性能。这包括内存配置、I/O处理、资源限制等方面。 8. 存储管理:Oracle内核负责管理数据文件、控制文件和重做日志文件等数据库...

    oracle11g安装时内核参数设置

    在进行Oracle 11g数据库的安装与配置过程中,对Linux系统的内核参数进行恰当的调整是至关重要的一步。这不仅能够确保Oracle数据库在Linux环境下运行的稳定性和性能,还能避免一些常见的安装错误和警告。以下是对给定...

    linux安装oracle内核参数调整说明

    ### Linux安装Oracle内核参数调整详解 #### 一、引言 在Linux环境下部署Oracle数据库时,为了确保数据库系统的稳定性和高性能,往往需要对Linux内核的一些关键参数进行合理的调整。这些参数涉及到文件系统、内存...

    Oracle内核技术揭秘

    资源名称:Oracle内核技术揭秘内容简介:本书第1章主要说明一个方法论问题,总揽了oracle调优、排故的一般方法。在之后的章节中将会使用这章所介绍的方法来解决问题,并且会进一步分析调优排故的技巧。从第2章到第8...

    《Oracle内核技术揭秘》PDF版本下载.txt

    根据提供的文件信息,本文将对《Oracle内核技术揭秘》这一书籍进行详细的解析与知识点提炼。本书主要聚焦于Oracle数据库的内部运作机制和技术原理,对于深入理解Oracle数据库系统的架构、性能调优以及故障排查等方面...

    oracle内核技术

    《Oracle内核技术》这本书是针对Oracle数据库管理员(DBA)的专业读物,旨在深入解析Oracle数据库的内部工作原理,帮助读者提升在Oracle管理与优化方面的技能。Oracle作为世界上最广泛使用的数据库系统之一,其复杂性...

    oracle实现带参数视图

    ### Oracle 实现带参数视图 #### 背景与概念 在数据库设计与管理过程中,视图(View)作为一种虚拟表,对于简化查询、增强数据安全性和提供数据抽象具有重要作用。然而,标准的视图定义是静态的,无法根据不同的...

    Oracle 19c参数设置最佳实践 .xlsx

    oracle 19c数据库参数优化最佳实践

    Oracle数据库参数设置技术手册

    Oracle数据库参数设置技术手册 Oracle数据库参数设置技术手册是 Oracle数据库管理中最重要的技术手册之一,它涵盖了 Oracle数据库参数设置的技术细节。 Oracle数据库参数设置技术手册的主要内容包括 Oracle内存结构...

    Oracle Goldengate参数规范

    Oracle GoldenGate参数规范是针对其各个进程(如管理进程MGR、抽取进程EXTRACT、传输进程DATAPUMP、复制进程REPLICAT等)在实施过程中需要配置的一系列参数的模板。这些参数模板为Oracle GoldenGate的实施与运维人员...

    ORACLE数据库参数优化与分析

    ORACLE数据库参数优化与分析 ORACLE数据库参数优化与分析 ORACLE数据库参数优化与分析 ORACLE数据库参数优化与分析 ORACLE数据库参数优化与分析 ORACLE数据库参数优化与分析

    ado.net操作oracle简单参数化sql操作

    在本文中,我们将深入探讨如何使用ADO.NET进行Oracle数据库的简单参数化SQL操作,这对于防止SQL注入攻击、提高代码可读性和复用性至关重要。 首先,要进行Oracle数据库操作,我们需要引入Oracle的数据提供者——...

    linux内核参数详解

    对于特定的应用场景,如安装Oracle数据库或运行大型PostgreSQL数据库,理解并合理配置这些内核参数至关重要。本文将深入探讨Linux内核参数中的“System V IPC”相关参数,特别是与共享内存和信号灯有关的配置项,以...

    ORACLE参数调优方案

    ORACLE参数调优方案ORACLE参数调优方案ORACLE参数调优方案

    Oracle安装内核参数设置

    安装oracle内核参数说明及设置  kernel.shmmax  说明:  · Linux进程可以分配的单独共享内存段的大值(byte)  · 64位的linux操作系统,设置应该大于SGA_MAX_TARGET或MEMORY_MAX_TARGET的值/或者1/2的物理...

    Oracle 11G安装内核配置文件

    在CentOS 6.6操作系统上安装Oracle 11G时,对系统的内核参数进行优化是必不可少的步骤,因为这些参数直接影响到Oracle数据库的运行效率。 sysctl.conf文件是Linux系统中的一个配置文件,位于/etc目录下,用于设置...

    Oracle数据库参数设置

    Oracle 数据库参数设置详解 Oracle 数据库参数设置是指对 Oracle 数据库的各个参数进行调整和优化,以提高系统性能和稳定性。 Oracle 数据库参数主要包括磁盘 I/O、回滚段、redo 日志、SGA 参数等。 磁盘 I/O 是 ...

Global site tag (gtag.js) - Google Analytics