#uname -a
Linux inc-dba-crm-36-17 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:56:44 EST 2007 x86_64 x86_64 x86_64 GNU/Linuxn
kernel.shmmax = 4294967295
kernel.shmall = 2097152
数据库版本11.1.0.7
show parameter sga_ta
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
sga_target big integer 1360M
1.3G的SGA,4G最大内存段的设置。按照常理不会分段。
#sysresv
IPC Resources for ORACLE_SID "crmgsb" :
Shared Memory:
ID KEY
4685829 0x00000000
4718598 0x00000000
4751367 0x00000000
4784136 0x22c33c78
Semaphores:
ID KEY
26869793 0x51e6c3a0
26902562 0x51e6c3a1
26935331 0x51e6c3a2
26968100 0x51e6c3a3
27000869 0x51e6c3a4
27033638 0x51e6c3a5
27066407 0x51e6c3a6
27099176 0x51e6c3a7
27131945 0x51e6c3a8
27164714 0x51e6c3a9
27197483 0x51e6c3aa
27230252 0x51e6c3ab
27263021 0x51e6c3ac
27295790 0x51e6c3ad
27328559 0x51e6c3ae
27361328 0x51e6c3af
27394097 0x51e6c3b0
Oracle Instance alive for sid "crmgsb"
ipcs -ma
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 4685829 oracle 660 654311424 1058
0x00000000 4718598 oracle 660 402653184 1058
0x00000000 4751367 oracle 660 385875968 1058
0x22c33c78 4784136 oracle 660 2097152 1058
可是很明显实例CRMGSB被分了4段共享内存。
如果关掉NUMA,重启数据库,则共享内存分段问题不再出现。
alter system set "_enable_numa_optimization"=false scope=spfile;
#ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x22c33c78 4947972 oracle 660 1428160512 646
不知道numa跟共享内存分段的联系是什么?大家讨论讨论
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22034023/viewspace-701053/,如需转载,请注明出处,否则将追究法律责任。