故障简单描写叙述一下:LINUX系统未开启HugePages,主机内存将近300G。SWAP是32G。ORACLE 的 SGA_MAX_SIZE设置是主机内存的将近80%,SGA_TARGET设置是主机内在的将近60%。正常情况下数据库session大约在将近500。

故障当天业务有变化,session数添加了一倍。达到上1000个。内存紧张,用到了SWAP空间。

解决:找时间关数据库,又一次配置HugePages,重新启动数据库后观察,内存消耗较少,与未开启HugePages之前是数量级对照。

Hugepage能够减轻cpu的负担,还能够降低系统内存的消耗;普通情况下建议linux的数据库系统配置Hugepage(特别是内存大、SESSION多).

关于开启hugepages与关闭。參考:http://blog.csdn.net/haibusuanyun/article/details/20697371

关于LINUX 6关闭;http://blog.csdn.net/haibusuanyun/article/details/41983497

会话数600多时

[oracle@* ~]$ ps -ef|grep LOCAL| wc -l

613

[oracle@* ~]$ ps -ef|grep LOCAL| wc -l

647

[oracle@ ~]$ free -m

             total       used       free     shared    buffers     cached

Mem:        257927     255079       2847          0         64     148001

-/+ buffers/cache:     107013     150914

Swap:        31999      13738      18261

[oracle@ ~]$ cat /proc/meminfo |grep PageT

PageTables:     94353044 kB

[oracle@ ~]$ free -m

             total       used       free     shared    buffers     cached

Mem:        257927     255182       2745          0         64     147743

-/+ buffers/cache:     107373     150553

Swap:        31999      13981      18018

[oracle@ ~]$ ps -ef|grep LOCAL| wc -l

654

[oracle@~]$ cat /proc/meminfo |grep PageT

PageTables:     95038204 kB

会话数上1000时,

[oracle@ ~]$ cat /proc/meminfo |grep PageT

PageTables:     110855888 kB

[oracle@ ~]$ ps -ef|grep LOCAL| wc -l

1016

补充下配置HugePages后的使用情况

[oracle@ ~]$ cat /proc/meminfo |grep Page

PageTables:       164464 kB

[oracle@~]$ ps -ef|grep LOCAL|wc -l

429

未开启HugePages ORACLE session剧增时引起的一次悲剧的更多相关文章

  1. Oracle session inactive状态临时表数据未清空问题

    问题描述:Oracle数据库,java代码使用某数据库实例,获取connection并在使用结束关闭,而session未销毁,而是状态变为inactive从而导致临时表数据未清空. Oracle临时表 ...

  2. 尝试加载 Oracle 客户端库时引发 BadImageFormatException

    尝试加载 Oracle 客户端库时引发 BadImageFormatException 工程师给计算机诊断,就像医生给病人诊断一样,很多同样的症状,可能是由多种截然不同的原因导致的.   最近进行C# ...

  3. 尝试加载 Oracle 客户端库时引发 BadImageFormatException。问题记录

    电脑是win8 64位,安装oracle 11g r2 64位的,谁知道一切装完毕后,打开项目却连不上oracle数据了...首先是pl/sql连不上,装了oracle服务器,应该是不用再装客户端,p ...

  4. 【每日学习】Apache重写未开启,导致The requested URL /xxxx.html was not found on this server

    今天把项目环境从集成换成独立的,全部搭建好后,网站主页www.xxx.com能打开,但一涉及到跳转,带参数,比如 www.xxx.com/xxx/xxx.html 就会报错 The requested ...

  5. session过期时ajax请求刷新浏览器

    ajax前置处理实现异步请求session过期时跳转登录页面 function checkLogin(json) { if (typeof(json) === 'string' && ...

  6. “尝试加载 Oracle 客户端库时引发 BadImageFormatException”的解决方案

    今天要写个程序,环境是win8.1+ vs2012+ oracle,可是却出现了一个意想不到的问题: 异常!以下为数据库提示详细错误信息:尝试加载 Oracle 客户端库时引发 BadImageFor ...

  7. Oracle session连接数和inactive的问题记录

    Oracle session连接数和inactive的问题记录 http://timnity.javaeye.com/blog/280383 从上周起,服务器Oracle数据库出现问题,用不到半天,就 ...

  8. 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

    从10G开始,Oracle提供了一个较为轻量级的客户包,叫做Instant Client. 将它安装好后,就不用再安装庞大的Oracle Client了. 这样一来,只要客户端下载Instant Cl ...

  9. 如果在安装32位oracle 客户端组件时的情况下以64位模式运行,将出现问题

    今天要写个程序,环境是win7+ vs2008+ oracle.首先得保证能连接到数据库.确认代码是没有问题的,但是拿过来直接.报错: “尝试加载 Oracle 客户端库时引发 BadImageFor ...

随机推荐

  1. ecs01初始化node环境

    npm install 报错 > uglifyjs-webpack-plugin@ postinstall /opt/apps/iview-admin/node_modules/webpack/ ...

  2. WebRTC 介绍 (转)

    google开源了WebRTC项目,网址是:http://code.google.com/p/webrtc/. WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单 ...

  3. 开发使用mysql的一些必备知识点整理(二)查询

    简介 查询的基本语法 select * from 表名; from关键字后面写表名,表示数据来源于是这张表 select后面写表中的列名,如果是*表示在结果中显示表中所有列 在select后面的列名部 ...

  4. Java heap space设置方法记录

    最近被 OutOfMemory Error折腾得够呛,记载一点设置JVM虚拟机内存Javaheap space的方法. Tomcat 7 参考:  http://www.davidghedini.co ...

  5. Android view 数据缓存

    Android中经常需要用到view数据的缓存,比如我们希望EditText 在被切到别的界面的时候,输入的数据要仍保持不变. 参考代码: /* 缓存textview */ public class ...

  6. 讯飞语音识别Android-Demo

    import java.io.UnsupportedEncodingException; import android.app.Activity; import android.os.Bundle; ...

  7. Android:MVC模式(下)

    在上一篇文章中,我们将 View 类单独出来并完成了设计和编写.这次我们将完成 Model 类,并通过 Controller 将两者连接起来,完成这个计算器程序. 模型(Model)就是程序中封装了数 ...

  8. SilverLight:布局(2)GridSplitter(网格分割)垂直分割、水平分割

    ylbtech-SilverLight-Layout: 布局(2)GridSplitter(网格分割)垂直分割.水平分割 A, Splitter(分割)对象之 GridSplitter(网格分割)1: ...

  9. JAVA微信开发:[17]如何获取所有关注用户

    该方法获取所有关注公共账号的微信用户的openId集合, 再通过openId集合既可以获取所有的用户的信息.   /** * 获取所有的关注用户 * * @return */ public  List ...

  10. IDG | 四则运算表达式计算

    分析 首先将中缀表达式转换为后缀表达式(逆波兰式),然后使用栈进行计算. 没有考虑括号.小数. 代码 import java.util.LinkedList; import java.util.Lis ...