並發管理器如果出現問題, 一般重新啟動即可解決,但有時候adcmctl.sh stop 仍然關閉不了, 還是有很多
並發管理器進程在系統中運行, 這時我們可以使用kill 來進行清理,之后需要執行oracle提供的cmclean.sql
來清理並發請求 。
Kill 並發管理器進程 -
如果是 LINUX :
ps -ef |grep FNDLIBR|grep -v grep|cut -c 9-15|xargs kill -9
如果是 AIX :
ps -ef |grep FNDLIBR|grep -v grep|cut -c 9-17|xargs kill -9
kill掉FNDLIBR這個並發管理器中最多的進程后,還有一些進程比如FNDSM,FNDSCH,FNDCRM,
INVLIBR 等這些大小字母進程是屬於CONCURRENT MANAGER並發管理器的,也需要kill掉,
然后使用cmclean.sql 進行並發請求的清理。 通過數據庫SQL查看是否存在ICM程序還在運行:
select sid, serial# from v$session where program like '%ICM%' ;
如果存在記錄, 通過
alter system kill session 'sid,serial#' ; 進行清理。
最后重新開啟 adcmctl.sh start, 登入EBS查看狀態。