客户反映数据库异常down了
Sat Aug 8 20:41:03 2009
Errors in file /u01/oracle/10gdb/admin/masprod/bdump/masprod_pmon_4970.trc:
ORA-00474: SMON process terminated with error
Sat Aug 8 20:41:03 2009
PMON: terminating instance due to error 474
Instance terminated by PMON, pid = 4970
.tre 文件的内容
error 474 detected in background process
ORA-00474: SMON process terminated with error
dmesg 的结果:
oom-killer: gfp_mask=0xd0
Mem-info:
DMA per-cpu:
cpu 0 hot: low 2, high 6, batch 1
cpu 0 cold: low 0, high 2, batch 1
Normal per-cpu:
cpu 0 hot: low 32, high 96, batch 16
cpu 0 cold: low 0, high 32, batch 16
HighMem per-cpu:
cpu 0 hot: low 32, high 96, batch 16
cpu 0 cold: low 0, high 32, batch 16
Free pages: 14644kB (1472kB HighMem)
Active:838305 inactive:259746 dirty:0 writeback:0 unstable:0 free:3661 slab:10396 mapped:258933 pagetables:8987
DMA free:12516kB min:16kB low:32kB high:48kB active:0kB inactive:0kB present:16384kB pages_scanned:244153 all_unreclaimable? yes
protections[]: 0 0 0
Normal free:656kB min:928kB low:1856kB high:2784kB active:0kB inactive:76kB present:901120kB pages_scanned:337 all_unreclaimable? yes
protections[]: 0 0 0
HighMem free:1472kB min:512kB low:1024kB high:1536kB active:3353220kB inactive:1038908kB present:7471104kB pages_scanned:0 all_unreclaimable? no
protections[]: 0 0 0
DMA: 5*4kB 4*8kB 3*16kB 2*32kB 3*64kB 1*128kB 1*256kB 1*512kB 1*1024kB 1*2048kB 2*4096kB = 12516kB
Normal: 0*4kB 0*8kB 1*16kB 0*32kB 0*64kB 1*128kB 0*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 656kB
HighMem: 0*4kB 0*8kB 10*16kB 5*32kB 12*64kB 1*128kB 1*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 1472kB
Swap cache: add 3162324, delete 3162276, find 1547277/1763500, race 4+2
0 bounce buffer pages
Free swap: 2031272kB
2097152 pages of RAM
1802224 pages of HIGHMEM
83500 reserved pages
1058609 pages shared
48 pages swap cached
Out of Memory: Killed process 21861 (oracle).
内存不足导致oracle进程被杀了
从 HighMem free:1472kB 和 Normal free:656kB 可以看出,是高端和低端都不足了,而不存在低端用尽,高端还有的问题。
但是奇怪的是 Free swap: 2031272kB swap空间还有很多,为啥不使用swap空间,而直接杀了呢。
记录下,问题依然没有解决
附一下:
Tip: OOM Killer 的关闭与激活方式:
# echo "0" > /proc/sys/vm/oom-kill
# echo "1" > /proc/sys/vm/oom-kill
或者修改/etc/sysctl.conf,增加:
vm.oom-kill = 0
对于 RHEL 4 ,新增了一个参数: vm.lower_zone_protection 。这个参数默认的单位为 MB,默认 0 的时候,LowMem 为 16MB。建议设置 vm.lower_zone_protection = 200 甚至更大以避免 LowMem 区域的碎片,是绝对能解决这个问题的(这参数就是解决这个问题出来的)。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/133835/viewspace-1025145/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/133835/viewspace-1025145/