Oracle 在Linux下HugePage的配置

因为自从接触Oracle依赖,生产环境用的一般是Aix系统,在Aix下没有听说过关于HugePage的相关概念。最近处理了一个关于Suse Linux下HugePage的问题。当时排查的方向如下:

  • 当客户在单个节点做压力测试时,物理内存为256G,随着压力测试的继续,内存使用率会飙升到100%,最终导致系统挂起。
  • 当时在排查的时候,考虑到SGA已经限定为135G,pga_aggregate_limit大小为45G(在12C中此参数为硬性指标,当占用的pga达到此参数设定的大小,连接会断开)。正常情况下,数据库使用的内存不会超过190G。
  • 且通过给v$process查看PGA_ALLOC_MEM的SUM总和大小不超过5G。

后来最终定位到HugePage的问题,通过调整memlock最终解决。

下面来看一下在Linux下如何配置HugePage:

1.设置memlock参数:

设置的/etc/security/limits.conf文件memlock用户限制。设定值(单位为KB)略小于OS安装的RAM,大于将要分配给oracle的内存总量。
例如如果服务器配置了256GB=264511244KB的内存,你可以设置:264511244*0.8=211608995。
#vi /etc/security/limits.conf
...
oracle   soft   memlock    211608995
oracle   hard   memlock   211608995
重新登录到Oracle产品所有者帐户(例如‘oracle‘),检查memlock限制。
$ ulimit -l
211608995

2.修改vm.nr_hugepages参数

确保所有的数据库实例(包括ASM实例)都已启动。手工计算vm.nr_hugepages>=SGA_Target/Hugepagesize(2M)
如:SGA=143G, vm.nr_hugepages=(143+2)*1024/2=74240
用户编辑文件/etc/sysctl.conf设置vm.nr_hugepages参数:
#vi /etc/sysctl.conf
...
vm.nr_hugepages = 74240
修改后,使参数立即生效
sysctl -p

原文地址:https://www.cnblogs.com/dayu-liu/p/9502528.html

时间: 2024-10-12 16:07:35

Oracle 在Linux下HugePage的配置的相关文章

So Easy! Oracle在Linux上的安装配置系列一

So Easy! Oracle在Linux上的安装配置系列一 本文为So Easy!Oracle在linux上的安装和配置序列的第一篇Oracle安装基础环境的搭建 VMware Workstation 11.0 配置和CentOS-6.6-x86_64安装 本文环境及所需软件: Win7 Sevice Pack1 内存 6GB VMware Workstation 11.0  build-2305329 CentOS-6.6-x86_64-bin-DVD1.iso Xmanger Enterp

So Easy! Oracle在Linux上的安装配置系列四

So Easy! Oracle在Linux上的安装配置系列四  监听器的配置 在创建了数库和各种数据库对象并装载了数据后,下一步是在数据库服务器与使用它的用户之间建立连 接,Oracle Net Services使这种连接成为可能.Oracle Net Services组件必须"存活"在客户机和服务器上,它们一般使用TCP/IP网络协议来建立客户机和数据库服务器之间的网络连接. 本文官方文档位置: http://docs.oracle.com/cd/E11882_01/network.

Linux下SVN服务器安装配置及客户端安装说明

原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_zf7k6J6EHSszq4ZU_Tyn0JimTKV8SzI9Ac4veaxCG3im Linux 下 SVN 服务器安装配置 第一章 安装 1. 采用源文件编译安装.源文件共两个,为: subversion-1.6.1.tar.gz ( subversion 源文件) subversion-de

So Easy! Oracle在Linux上的安装配置系列七

So Easy! Oracle在Linux上的安装配置系列六 上几篇中,我们安装了oracle数据库软件,创建了数据库配置了监听,本篇是本系统文章的最后一篇,Oracle企业管理器的创建. 当完成了以上所有步骤后使用 $emctl start dbconsole 启动oracle企事业管理器,会出现以下错误,提示说没有设置ORACLE_UNQNAME环境变量 [[email protected] ~]$ emctl start dbconsoleEnvironment variable ORAC

So Easy! Oracle在Linux上的安装配置系列三使用create database创建数据库

本文为So Easy! Oracle在Linux上的安装配置系列的第三篇,使用create database创建数据库,本序列第一篇介绍了学习实验环境的搭建包括:在win 7中使用VMware Workstation 创建虚拟机,安装CentOS-6.6-x86_64,网络配置 和使用xshell连接远程linux服务器,上传Oracle软件和使用操作系统安装光盘搭建本地yum源,第二篇专门说了Oracle11g R2在CentOS6.6上的安装,包括Oracle安装前的准备工作,并以图文详细介

Oracle在Linux下的性能优化

Oracle数据库内存参数的优化 Ø       与oracle相关的系统内核参数 Ø       SGA.PGA参数设置   Oracle下磁盘存储性能优化 Ø       文件系统的选择(ext2/ext3.xfs.ocfs2) Ø       Oracle ASM存储  1.优化oracle性能参数之前要了解的情况 1)物理内存有多大 2)操作系统估计要使用多大内存 3)数据库是使用文件系统还是裸设备 4)有多少并发连接 5)应用是OLTP类型还是OLAP类型 2.oracle数据库内存参

Oracle在linux下的开机自启动(详细)转

linux下系统开机oracle自启动(方法一) ---加载为服务自启动.停止一.dbstart   及   dbstop 1. 修改Oracle系统配置文件:/etc/oratab,只有这样,Oracle 自带的dbstart和dbshut才能够发挥作用. # vi /etc/orataborcl:/opt/oracle/102:Y # Entries are of the form:#   $ORACLE_SID:$ORACLE_HOME:<N|Y>: Oracle   数据库的自动启动及

So Easy! Oracle在Linux上的安装配置系列五

So Easy! Oracle在Linux上的安装配置系列五 本篇是监听器的配置的续篇,上一小节我们创建了一个监听器,创建了密码文,在监听和实例都启动的情况下,从远程windows即时客户端连接到了oracle服务器.本篇我将继续说监听器,还将完成相关的实验 以下内容整理自网络 Oracle 监听器 Listener 是一个重要的数据库服务器组件,在整个 Oracle 体系结构中,扮演着重要的作用.它负责管理 Oracle 数据库和客户端之间的通讯,它在一个特定的网卡端口(默认是TCP 1521

Linux下Redis服务器安装配置

说明:操作系统:CentOS1.安装编译工具yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel kernel keyutils  patch perl 2.安装tcl组件包(安装Redis需要tcl支持)cd /usr/local/src #进入软件包存放目录wget  http://downloads.sourceforge.net/tcl/tcl8.6.6-src.tar.gztar