1台HPUX服务器,CPU 100%,16CPU
但是ACTIVE的会话只有几个
操作系统上检查发现大约有10个并行进程消耗了几乎全部CPU
而数据库连检查这些进程时INACTIVE的。
查询v$px_session发现,这些并行进程的父协调进程已经不再了
通过v$process minus v$session也未发现异常的进程
检查TRC,发现该服务器异步IO未配置正确。
尝试oradebug SHORT_STACK 卡死
尝试gdb无权限,没法得到进程堆栈
尝试tusc,结果未安装
考虑此刻并行进程应该已经陷入了死循环,消耗大量的CPU
贸然杀掉怕造成更严重的异常的后果。
由于本数据库异步IO本来就有问题,本来系统IO压力就较大。打算等到计划内停机时在杀掉,顺便配置异步IO
询问客户能否重启。得到当前出账已经完成,可以重启。
尝试杀掉这些并行进程后,CPU立刻降至3%
顺便在重启了下库,配置了异步IO。
继续观察
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8242091/viewspace-752002/
,如需转载,请注明出处,否则将追究法律责任。