未开启HugePages ORACLE session剧增时引起的一次悲剧
故障简单描写叙述一下: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剧增时引起的一次悲剧的更多相关文章
- Oracle session inactive状态临时表数据未清空问题
问题描述:Oracle数据库,java代码使用某数据库实例,获取connection并在使用结束关闭,而session未销毁,而是状态变为inactive从而导致临时表数据未清空. Oracle临时表 ...
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException
尝试加载 Oracle 客户端库时引发 BadImageFormatException 工程师给计算机诊断,就像医生给病人诊断一样,很多同样的症状,可能是由多种截然不同的原因导致的. 最近进行C# ...
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException。问题记录
电脑是win8 64位,安装oracle 11g r2 64位的,谁知道一切装完毕后,打开项目却连不上oracle数据了...首先是pl/sql连不上,装了oracle服务器,应该是不用再装客户端,p ...
- 【每日学习】Apache重写未开启,导致The requested URL /xxxx.html was not found on this server
今天把项目环境从集成换成独立的,全部搭建好后,网站主页www.xxx.com能打开,但一涉及到跳转,带参数,比如 www.xxx.com/xxx/xxx.html 就会报错 The requested ...
- session过期时ajax请求刷新浏览器
ajax前置处理实现异步请求session过期时跳转登录页面 function checkLogin(json) { if (typeof(json) === 'string' && ...
- “尝试加载 Oracle 客户端库时引发 BadImageFormatException”的解决方案
今天要写个程序,环境是win8.1+ vs2012+ oracle,可是却出现了一个意想不到的问题: 异常!以下为数据库提示详细错误信息:尝试加载 Oracle 客户端库时引发 BadImageFor ...
- Oracle session连接数和inactive的问题记录
Oracle session连接数和inactive的问题记录 http://timnity.javaeye.com/blog/280383 从上周起,服务器Oracle数据库出现问题,用不到半天,就 ...
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
从10G开始,Oracle提供了一个较为轻量级的客户包,叫做Instant Client. 将它安装好后,就不用再安装庞大的Oracle Client了. 这样一来,只要客户端下载Instant Cl ...
- 如果在安装32位oracle 客户端组件时的情况下以64位模式运行,将出现问题
今天要写个程序,环境是win7+ vs2008+ oracle.首先得保证能连接到数据库.确认代码是没有问题的,但是拿过来直接.报错: “尝试加载 Oracle 客户端库时引发 BadImageFor ...
随机推荐
- poj 3293 Rectilinear polygon
Rectilinear polygon Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2125 Accepted: 24 ...
- PXC部署,配置,操作原理
参考:https://www.cnblogs.com/kevingrace/p/5685371.html?utm_source=itdadao&utm_medium=referra ...
- #pragma用法
#pragma是一种预处理指令,作用是设定编译器的状态或者是指示编译器完成一些特定的动作. 其格式一般为:#pragma Para.其中Para为参数.下面是一些常见用法. 1.message ——在 ...
- 四、 java循环结构
for循环结构: 格式:①初始化条件;②循环条件;③迭代条件;④循环体 for(①;②;③){ //④ } 执行过程:①-②-④-③-②-④-③-...-④-③-②,直至循环条件不满足,退出当前的循环 ...
- C#读取Excel 几种方法的体会
(1) OleDb: 用这种方法读取Excel速度还是非常的快的,但这种方式读取数据的时候不太灵活,不过可以在 DataTable 中对数据进行一些删减修改 这种方式将Excel作为一个数据源,直接用 ...
- ping++微信渠道,第二次拉起不能进行支付返回订单号重复问题
项目中用到了支付功能,采用的是ping++实现的,上线运行一年多都很正常,但是最近突然出现有买家反映说不能进行支付的情况 通过了解和沟通之后发现发现是重复拉起失败,然后我们对问题进行了排查. 测试过程 ...
- JS-禁止移动端长按页面后弹出“在浏览器打开”这个菜单
阻止浏览器的touchstart事件 document.addEventListener('touchstart', function(e) { e.preventDefault(); ...
- Hibernate游记——装备篇《三》(连接池的使用)
这里介绍几种最常见的连接池配置: [说明:在hibernate3.0中,已经不再支持dbcp了,hibernate的作者在hibernate.org中,明确指出在实践中发现dbcp有BUG,在某些种情 ...
- Django 利用 Pagination 分页
Django自身提供了一些类来实现管理分页,数据被分在不同的页面中,并带有“上一页/下一页”标签.这个类叫做Pagination,其定义位于 django/core/paginator.py 中. 一 ...
- (49)C# npoi-word
//新建段落 XWPFParagraph p1 = doc.CreateParagraph(); //对齐方式 p1.SetAlignment(ParagraphAlignment.LEFT); p1 ...