开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

粗浅记录Oracle RAC系统内存无法释放

简介:
+关注继续查看

交代一下环境,是现网实时生产数据库主机。Hp-ux 11.31+Oracle 10.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_MEM from v$session a, v$process b where a.PADDR=b.ADDR and a.sid ='&sid'

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

 SQL>  select sum(PGA_USED_MEM) from v$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。



本文转自yangjunfeng 51CTO博客,原文链接:http://blog.51cto.com/yangjunfeng/1792231

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ORACLE RAC 手动建库
环境 11.2.0.1 RAC 前提条件 Grid Infrastructure已经安装 ASM已经创建 DB软件已经安装 通过手动创建RAC可以更深的理解单实例DB和RAC...
1059 0
【中亦安图】风险提醒之Oracle RAC高可用失效(2)
  第一章 技术人生系列 · 我和数据中心的故事(第二期)——风险提醒之Oracle RAC高可用失效 中亦安图 | 2016-01-15 21:36 前言 不知不觉,技术人生·我和数据中心的故事来到了第二期,有朋友开始关心小y是谁,这不重要,我们更关心的是技术层面的分享以及给客户带来的实际的风险提示。
1320 0
Oracle 11g RAC搭建(VMware环境)
Oracle 11g RAC搭建(VMware环境) Oracle 11g RAC搭建VMware环境 安装环境与网络规划 安装环境 网络规划 环境配置 通过SecureCRT建立命令行连接 关闭防火墙 ...
3092 0
牛刀小试Oracle之ORACLE 11GR2 RAC安装配置-Database软件与数据库安装(五)
这是最后一章了,写东西总是快乐与充实的。Oracle Database软件与数据库安装和安装单实例没有太大区别,唯一的几个区别就是选择rac还是single instance啦。废话不多说,进入安装正题。
875 0
牛刀小试Oracle之ORACLE 11GR2 RAC安装配置-asm磁盘组配置添加(四)
回顾之前的第一章,asm磁盘组我做了如下的规划: 划分效果如下: ---------------------------------------------------------------------------    Device Boo...
1059 0
牛刀小试Oracle之ORACLE 11GR2 RAC安装配置--检测GI软件是否正常(三)
1. 切换至grid用户 [root@Zracnode1 ~]# su - grid2.查看CRS状态(目前Oracle11GR2官方文档,不建议用如下命令检测了,等我有时间在整理补充) [grid@Zracnode1 ~]$ crs_stat -t Name         ...
932 0
牛刀小试Oracle之ORACLE 11GR2 RAC安装配置--GI安装配置(二)
1.安装Grid Infrastructure软件 1.1 部署软件包,如下所示:曾经有部电影叫:七剑下天山。这里Oracle的软件包,就是Oracle七件套,只要钱三件,可以完成Oracle rac的部署 [root@Zracnode1 software]# pwd /...
1025 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
ORACLE 10g 数据库体系结构图
立即下载
PostgresChina2018_刘成伟_oracle到Postgres数据库迁移工具
立即下载
Oracle 和 MySQL 性能优化感悟
立即下载