- 论坛徽章:
- 1
|
今天做oracle8160 ops升级的时候,两台机器上sql下连数据库的时候均出现超时现象,不能链接到数据库。
环境:aix43311 oracle8160 ops hacmp4.3
在host1上
[host1 #]ps aux |head -4
USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND
root 516 49.6 2.0 12 16788 - A 15:17:30 1315:50 kproc
root 774 49.2 2.0 12 16788 - A 15:17:30 1305:44 kproc
oracle 28402 0.7 2.0 31580 14720 - A 16:03:34 17:27 ora_lmd0_szt1
topas发现oracle进程占用50%的cpu,
而在host2上,ps aux,ps ug ,topas并未发现异常现象,oracle进程也一切正常。
[host2 #]ps aux | head -4
USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND
root 516 49.6 3.0 12 16784 - A 13:52:50 1389:46 kproc
root 774 49.6 3.0 12 16784 - A 13:52:50 1388:58 kproc
root 26600 0.2 0.0 1268 1524 - A 11:08:26 0:37 /usr/dt/bin/dtter
在两台机器上均发现kproc进程,并且占用cpu时间最大,有点莫名奇妙,使用ps -k命令验证该进程为内核进程,
[szpcac1 #]ps -k | more
PID TTY TIME CMD
0 - 0:13 swapper
516 - 1362:58 kproc
774 - 1315:59 kproc
1032 - 0:00 kproc
1290 - 0:00 kproc
1548 - 1:25 kproc
1806 - 0:00 kproc
2872 - 0:00 kproc
3382 - 0:00 kproc
3884 - 0:00 kproc
4206 - 0:00 kproc
4412 - 0:00 kproc
4648 - 0:00 kproc
4904 - 0:00 kproc
5170 - 0:00 kproc
5420 - 0:00 kproc
5678 - 0:00 kproc
5936 - 0:00 kproc
6194 - 0:00 kproc
6452 - 0:00 kproc
6710 - 0:00 kproc
7226 - 0:00 kproc
晕 这个进程是干什么用的呢····怎么占用这么大的cpu时间呢
查了资料才知道
当我们使用命令: " ps aux" 或"ps ug" 检查各进程对于CPU和内存的使用情况时,经常会看到 "kproc"(PID 516)进程占有很高的CPU使用率. 这种情况是正常的,此进程代表系统的空闲时间.一般情况,在系统负载不是很高的时候,此进程占CPU达到50% 或更高. 吓了一跳···
那究竟是什么原因导致sqlplus下连接数据库超时呢?
查来查去还是host1上面的 ora_lmd0_szt1进程,不知道这个进程在干什么?9i以后都没这个进程。这个进程占用了50%的cpu进程,不知道再对实例作些什么操作,导致两台机器都不能链接到oracle实例。
没办法,好在现在没业务在跑,host1上 smitty clstop关闭ha,释放资源,数据库实例自然死亡。
再用ps aux ps ug topas查看时,host1上正常。在host2上slqplus下链接数据库成功。host1上smitty clstart启动双机 失败。kao!!!重启host1,启动双机,启动数据库,sqlplus conn /as sysdba 成功。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/16252/showart_110880.html |
|