oracle rac 内存耗尽,粗浅记录Oracle RAC系统内存无法释放-程序员宅基地

技术标签: oracle rac 内存耗尽  

交代一下环境,是现网实时生产数据库主机。Hp-ux 11.31+Oracle10.2.0.4.0 RAC集群。

两台机器户外RAC,essdb3与essdb4两台机器。

物理内存128G,SGA分配64G,PGA分配5G。早上发现essdb4主机glance运行只有6G的空闲内存。

使用如下命令进行简单分析:

sql> select distinct sid from v$mystat; 得到sid,算算一个空闲进程占用的pga有多大。

sql>select b.PGA_USED_MEM PGA_USED_MEM,b.PGA_ALLOC_MEM PGA_ALLOC_MEM,b.PGA_FREEABLE_MEM PGA_FREEABLE_MEM,b.PGA_MAX_MEM PGA_MAX_MEMfrom v$session a,v$process bwhere a.PADDR=b.ADDR and a.sid ='&sid'

输入刚刚得到的SID号。算出一个空闲进程大概占用的内存,系统总的PGA的使用基本上稳定在1.29G到2G之间(系统设置的PGA的最大值是5G),与往常相比也是一个非常合理的状态。

sql>selectsum(PGA_USED_MEM)fromv$process;

SUM(PGA_USED_MEM)

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

1298679359

我们使用ipcs观察共享内存段的使用情况:

essdb4_oracle[/var/adm/syslog]$ipcs -mb

IPC status from /dev/kmem as of Thu Jun 23 10:18:00 2016

T ID KEY MODE OWNER GROUP SEGSZ

Shared Memory:

m 0 0x411c06cb --rw-rw-rw- root root 348

m 1 0x4e0c0002 --rw-rw-rw- root root 61760

m 2 0x4120077b --rw-rw-rw- root root 8192

m 3 0x00a5c581 --rw------- sfmdb users 10469376

m 4 0x411c14fb --rw------- root root 4096

m 13893637 0x00000000 --rw-r----- oracle oinstall 18790481920

m 6 0x06347849 --rw-rw-rw- root root 65544

m 7 0x0c6629c9 --rw-r----- root root 22614264

m 32776 0x01205c0a --rw-rw-r-- root root 4192

m 9 0x00000000 D-rw-rw-r-- root root 4192

m 10 0x00000000 D-rw-rw-r-- root root 4192

m 11 0x4918a061 --rw-r--r-- root root 22912

m 12 0x0120468b --rw-rw-r-- root root 4192

m 13 0x00000000 --rw-r----- oracle oinstall 18807521280

m 14 0x00000000 --rw-r----- oracle oinstall 18807259136

m 15 0x00000000 --rw-r----- oracle oinstall 12367142912

m 16 0x3546761c --rw-r----- oracle oinstall 135168

共享内存的详细使用信息:

essdb4_oracle[/]#ipcs -mb

IPC status from /dev/kmem as of Thu Jun 23 13:42:57 2016

T ID KEY MODE OWNER GROUP SEGSZ

Shared Memory:

m 0 0x411c06cb --rw-rw-rw- root root 348

m 1 0x4e0c0002 --rw-rw-rw- root root 61760

m 2 0x4120077b --rw-rw-rw- root root 8192

m 3 0x00a5c581 --rw------- sfmdb users 10469376

m 4 0x411c14fb --rw------- root root 4096

m 13893637 0x00000000 D-rw-r----- oracle oinstall 18790481920

m 6 0x06347849 --rw-rw-rw- root root 65544

m 7 0x0c6629c9 --rw-r----- root root 22614264

m 32776 0x01205c0a --rw-rw-r-- root root 4192

m 9 0x00000000 D-rw-rw-r-- root root 4192

m 10 0x00000000 D-rw-rw-r-- root root 4192

m 11 0x4918a061 --rw-r--r-- root root 22912

m 12 0x0120468b --rw-rw-r-- root root 4192

m 13 0x00000000 --rw-r----- oracle oinstall 18807521280

m 14 0x00000000 --rw-r----- oracle oinstall 18807259136

m 15 0x00000000 --rw-r----- oracle oinstall 12367142912

m 16 0x3546761c --rw-r----- oracle oinstall 135168

共享内存段状态为D - Delete,这在通常情况下是不正常的,这是一个Oracle用户占用的共享内存段,由于状态为D的共享内存段本身就是没有正常使用的内存段,所以满以为使用ipcrm �m id删除这个共享内存段,应该就可以解决问题,但是,当时上述做法的结果是系统报告找不到找个ID。

essdb4_oracle[/]#ipcrm -m 13893637

现在我们使用shminfo要使用root权限,查看一下当前到底哪个进程在使用找个共享内存段:

essdb4_oracle[/]#shminfo -s 13893637

sh: shminfo: not found.

最后重启该节点数据库依然持有该共享内存,无果最后只能重启操作系统,得到释放,当前系统可用内存40G。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_40001372/article/details/116433995

智能推荐

mysql导入txt linux_Linux中将txt导入到mysql的方法教程-程序员宅基地

文章浏览阅读110次。前言昨天写小项目的时候遇到了一个需求:把txt文档的数据导入到mysql数据库中,开始本来想直接用Mysql Workbench导入TXT文件,但是最后发现不支持TXT导入,结果我吧嗒吧嗒的去把TXT转了Excel,拿到Linux上导入的时候又发现了各种乱码问题。抱着没有什么是程序员干不了的原则,我手写了一个Python代码直接操作文件进行导入了。结果大概一万多条的文件,导入时间大概两分钟。下面是...

运维面试问道 故障经验处理过啥故障全部案例_运维工程师面试问故障怎么回答-程序员宅基地

文章浏览阅读859次,点赞18次,收藏13次。16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?5、LVS、Nginx、HAproxy有什么区别?9、讲述一下Tomcat8005、8009、8080三个端口的含义?7、Tomcat和Resin有什么区别,工作中你怎么选择?14、讲一下Keepalived的工作原理?15、讲述一下LVS三种模式的工作过程?

Qt之解决QWidget样式表(StyleSheet)不起作用_pyqt中样式tabwidget字体转置失效-程序员宅基地

文章浏览阅读1.1k次,点赞8次,收藏11次。Qt之解决QWidget样式表(StyleSheet)不起作用_pyqt中样式tabwidget字体转置失效

【20151120】近期学习笔记-程序员宅基地

文章浏览阅读83次。 1)camel流程中的if else假设流程是CamelStart->A->B流程启动类 public class CamelStart { public static void main(String[] args) { ApplicationContext ctx = new FileSystemXmlApplicationContext("it..._camel xml if else

OpenAI又一神器!Whisper 语音转文字手把手教程-程序员宅基地

文章浏览阅读2.5k次。语音转文字在许多不同领域都有着广泛的应用。以下是一些例子:1.字幕制作:语音转文字可以帮助视频制作者快速制作字幕,这在影视行业和网络视频领域非常重要。通过使用语音转文字工具,字幕制作者可以更快地生成字幕,从而缩短制作时间,节省人工成本,并提高制作效率。2.法律文书:在法律领域,语音转文字可以帮助律师和律所将听证会、辩论和其他法律活动的录音转化为文字文档。这些文档可以用于研究、起草文件和法律分析等目..._whisper实时语音转文字

计算机毕业设计springboot房产中介管理系统9y6td9【附源码+数据库+部署+LW】_,基于springboot的房产中介系统选题意义-程序员宅基地

文章浏览阅读99次。选题背景:随着城市化进程的加快和人们生活水平的提高,房地产行业得到了迅猛发展。而在房地产交易过程中,房产中介作为连接买卖双方的桥梁,起到了至关重要的作用。然而,传统的房产中介管理方式存在着信息不对称、效率低下、服务质量参差不齐等问题,亟需一种更加高效、便捷、可靠的管理系统来提升整个行业的运营水平。选题意义:开发一款基于Spring Boot的房产中介管理系统具有重要的意义。首先,该系统可以实现信息的集中管理和共享,通过建立统一的数据库,将各类房源信息、客户需求、交易记录等数据进行整合,使得中介公司能_,基于springboot的房产中介系统选题意义

随便推点

大屏大概是怎么个开发法(前端)_大屏开发-程序员宅基地

文章浏览阅读3.7k次,点赞16次,收藏36次。关于项目的维护与新增需求过程中值得一提的事_大屏开发

Qt开发——网络编程之UDP客户端_qt如何编写udp客户端-程序员宅基地

文章浏览阅读2k次,点赞2次,收藏3次。今天是大年初一,祝大家新年快乐!目录效果图手册选读bind绑定:readRead():例程udpclient.hudpclient.cpp效果图与上一节服务端收发配合使用手册选读bind绑定:对于UDP嵌套关键字,在绑定之后,每当UDP数据表到达指定地址或者指定端口时,readRead()信号就会被发射!readRead():每次..._qt如何编写udp客户端

Dynamic Movement Primitve - My Superficial Review_dynamics systems vs. optimal control — a unifying -程序员宅基地

文章浏览阅读1k次,点赞3次,收藏5次。Let’s talk about the Dynamic Movement Primitive (DMP) for robots learning from demonstration. In this article, we make an assumption that you readers all have the background of control theory and robo..._dynamics systems vs. optimal control — a unifying view

angular追加html,Angular HTML绑定-程序员宅基地

文章浏览阅读352次。Angular 2.0.0和Angular 4.0.0 final仅为了安全的内容DOMSanitizer潜在的不安全HTML需要使用Angulars DOM清理程序明确标记为受信任,因此不会删除内容中可能不安全的部分用管子@Pipe({name:'safeHtml'})exportclassSafe{constructor(privatesanitizer:DomSanitizer){..._angular safehtml

轻松学习C语言编程的秘诀:总结+灵感-程序员宅基地

文章浏览阅读120次。2019独角兽企业重金招聘Python工程师标准>>> ..._c语言秘籍

dataframe类型数据的遍历_pandas修改数据时要注意的问题-程序员宅基地

文章浏览阅读1.2k次。先导入数据:import numpy as npimport pandas as pdimportdatetimedf=pd.read_excel('/Users/dxn/Desktop/发票2020.xlsx',header=0,dtype={'发票号码':'str'})数据结构情况:>>> df 日期 供货单位 发票号码 价税合计0 ..._dataframe遍历时能赋值吗