EBS Concurrent Manager(併發管理器)異常處理[final]

kunlunzhiying發表於2016-12-06

有時候我們在透過 adstpall.sh 關閉應用後,然後再使用adstrtal.sh開啟。發現併發
管理器不能正常執行, 所以一般開啟關閉應用的時候需要做一些檢查工作,避免併發管
理器異常的問題,出現併發管理器問題也可以按照這個步驟來操作。


1. 關閉APP: adstpall.sh  apps/<passwd>,這時關閉了應用所有服務及併發管理器,OPMN等。

2. 進行計劃的一些操作(比如調整引數,打補丁等) .

3. 準備開啟(adstrtal.sh)前做一些檢查

  3.1 檢視使用者程式及併發程式是否全部正常關閉

      檢視數量及程式 
      ps -fu applgerput | grep  FND | wc -l
      ps -fu applgerput    檢視具體程式

  3.3 如果還有併發程式,執行停止併發指令碼
      cd   $ADMIN_SCRIPTS_HOME
      adcmctl.sh  stop

  3.4 觀察併發程式狀態,併發程式後帶有[defunct]字樣的都是已僵死程式,不用理會。
      如果其他還在執行的併發程式較少,那麼可以使用kill -9 加ID號殺掉。如果過多,
      使用 kill -9 -1 清理本使用者的process .
     
      再次檢視併發程式是否還存在:
      ps -fu applgerput | grep  FND | wc -l

      apps登入資料庫跑一次指令碼 cmclean.sql 

      同時執行 select SID, SERIAL#  from v$session where program like '%ICM%',如果有這個session,        執行  alter system kill session 'SID,SERIAL#'; 殺掉程式 。否則cmclean.sql會一直等待。


      如果cmclean.sql執行還存在等待, 那麼還需要到資料庫查詢是否存在row cache lock事件。  在資料庫查詢是否有“row cache lock”等待事件,如果有,需要清理。

      select event,count(*) from gv$session_wait group by event order by count(*) desc;

      SELECT s.sid,s.serial#,p.spid, t.sql_text FROM v$session s, v$sql t, v$process p
      WHERE s.event LIKE 'row cache lock' AND t.sql_id = s.sql_id AND s.PADDR = p.ADDR ;

      Alter system kill session 'SID,SERIAL#'  ;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28211342/viewspace-2129908/,如需轉載,請註明出處,否則將追究法律責任。

相關文章