oracle共享内存设置spfile,IPC 资源、kernel.shmmax和Oracle 共享内存的调整
㈠ IPC 资源查看与释放
[root@david ~]# ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
...
...
0xbe3bb918 5439503 oracle 640 419438592 22
[root@david ~]# ipcs -m -i 5439503
Shared memory Segment shmid=5439503
uid=501 gid=502 cuid=501 cgid=502
mode=0640 access_perms=0640
bytes=419438592 lpid=5335 cpid=5283 nattch=21
att_time=Sat Jun 29 18:50:06 2013
det_time=Sat Jun 29 18:51:07 2013
change_time=Sat Jun 29 18:49:33 2013
注释:
cuid:创建这个共享内存的用户ID
cgid:创建这个共享内存的组ID
lpid:最后一次访问这个共享内存的PID
nattch: 连接到共享内存段的进程数
att_time:最后一次调用shmat()的时间
det_time:最后一次调用shmdt()的时间 [shmdt函数释放共享内存]
change_time:最后一次用shmctl()修改共享内存段的时间 [shmctl删除共享内存]
[root@david ~]# ipcrm -m 5439503
[root@david ~]# ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
...
...
0x00000000 5439503 oracle 640 419438592 20 dest
此时 status 变成 dest、而key变成 0x00000000
[root@david ~]# ipcs -m -i 5439503
Shared memory Segment shmid=5439503
uid=501 gid=502 cuid=501 cgid=502
mode=01640 access_perms=0640
bytes=419438592 lpid=5993 cpid=5283 nattch=19
att_time=Sat Jun 29 19:29:42 2013
det_time=Sat Jun 29 19:29:42 2013
change_time=Sat Jun 29 18:49:33 2013
㈡ 共享内存
shmmax 内核参数定义单个共享内存段的最大值、如果该参数设置小于Oracle SGA设置
那么SGA就会被分配多个共享内存段、引发性能下降、为了避免多个共享内存段、
我们可以修改shmmax 内核参数、使SGA 存在于一个共享内存段中
修改shmmax方法:
1) 直接编辑/etc/sysctl.conf
2) sysctl -w kernel.shmmax=xxx
3) echo "kernel.shmmax=xxxx" >> /etc/sysctl.conf
修改完之后、sysctl -p
在Oracle 里面、如果开启 NUMA特性、则共享内存是要分段的、这会引发很多的bug
DBA 在启动一个特性时、一定要了解该特性的来龙去脉以及全面评估该特性所产生的影响!
所以、我们一般:
alter system set "_enable_numa_optimization"= false scope=spfile;
不过、这个隐藏参数到 11gR2 好像被废除了、11gR1还存在的
这也从侧面告诉我们、Oracle的东东、我们还是使用R2 的比较放心哈
㈢ 查看Oracle共享内存的使用情况
sys@ORCL> oradebug setmypid
Statement processed.
sys@ORCL> oradebug ipc
Information written to trace file.
sys@ORCL> oradebug TRACEFILE_NAME
/u01/app/oracle/admin/orcl/udump/orcl_ora_6161.trc
将trc文件结合ipcs -m -i shmid 来对照查看、这里就不赘述了
By David Lin
2013-06-29
Good Luck
oracle共享内存设置spfile,IPC 资源、kernel.shmmax和Oracle 共享内存的调整相关推荐
- Linux内核参数(如kernel.shmmax)及Oracle相关参数调整(如SGA_MAX_SIZE)
Linux内核参数(如kernel.shmmax)及Oracle相关参数调整(如SGA_MAX_SIZE) 我们一般在Linux 上安装 设置Oracle 数据库 或者在更换或升级硬件的时候都需要配置 ...
- sqlplus连接不上oracle,环境变量设置错误导致sqlplus 连接不上oracle
碰到一个奇怪的问题:在操作系统用户下oracle 下,我用sqlplus / as sysdba 命令连接不上去,如下: [oracle@gridrac1 ~]$ export ORACLE_SID= ...
- oracle环境变量配置教程,oracle_window中oracle环境变量设置方法分享,window server中Oracle的环境变量设 - phpStudy...
window中oracle环境变量设置方法分享 window server中Oracle的环境变量设置 1.右击"我的电脑"->选择"属性"->选择 ...
- oracle数据库res,ipcs、ipcrm、sysresv、kernel.shmmax
ipcs.ipcrm.sysresv.kernel.shmmax 1.1BLOG文档结构图 1.2 前言部分1.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到 ...
- 全面认识Eclipse中JVM内存设置
这里向大家描述一下Eclipse中如何进行JVM内存设置,JVM主要管理两种类型的内存:堆和非堆.简单来说堆就是Java代码可及的内存,是留给开发人员使用的:非堆就是JVM留给自己用的,所以方 ...
- 全面认识Eclipse中JVM内存设置(转)
这里向大家描述一下Eclipse中如何进行JVM内存设置,JVM主要管理两种类型的内存:堆和非堆.简单来说堆就是Java代码可及的内存,是留给开发人员使用的:非堆就是JVM留给自己用的,所以方法区.J ...
- 家庭内两家计算机怎样共享,如何设置局域网多台计算机共享文件
win7局域网内怎么实现文件夹资源共享?如何设置局域网多台计算机共享文件? 今天系统之家小编就为大家介绍一下设置局域网多台计算机共享文件的设置方法,希望能帮助到大家. 设置局域网多台计算机共享文件方法 ...
- win10计算机名访问win7,Win10和Win7共享打印机设置方法
Win10和Win7如何共享打印机呢?当局域网中同时存在Win10和Win7系统,同时局域网中只有某一台计算机连接有打印机时,我们可以通过局域网打印机共享操作来实现打印机共享.下面就与大家分享一下局域 ...
- ipcs、ipcrm、sysresv、kernel.shmmax
ipcs.ipcrm.sysresv.kernel.shmmax 1.1 BLOG文档结构图 1.2 前言部分 1.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可 ...
最新文章
- 基于C++的图像散度计算
- java中抽象类的匿名子类和匿名对象
- 每日一句(2014-8-26)
- word通配符使用法详解
- [NOI2016]循环之美(杜教筛)
- How to Set up SSH Tunneling (Port Forwarding)?
- 前端学习(2598):按钮控制操作
- 韩春雨要“翻案”?最新研究发现NgAgo具有DNA编辑能力
- CodeForces - 233A Perfect Permutation
- 《恋上数据结构第1季》二叉树基础、真二叉树、满二叉树、完全二叉树、二叉树的遍历(重点)
- vc中运行外部程序的方法
- 这款游戏玩法是Low了点,但赚的却是实打实的EOS。
- Python基础学习Day3 数据类型的转换、int、str、bool、字符串的常用方法、for循环...
- android中一个应用程序启动另外一个应用程序,并传递数据。
- 浙江大学概率论与数理统计第四版考研真题和课后答案
- south plus soul /index.php 南+入口检测
- 2018金山WPS实习面试
- 机器学习算法/模型——支持向量机
- Golang开发入门
- 由椭圆一般方程求解椭圆标准方程参数