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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值