將數據庫集群升級到10.2.0.5之後,雙節點服務器不斷重啟,查詢oracle oprocd進程日志,信息如下:
Jul 03 08:16:34.702 | INF | monitoring started with timeout(1000), margin(500), skewTimeout(125) Jul 03 08:16:34.704 | INF | fatal mode startup, setting process to fatal mode
可以看到看到oprocd進程的時間間隔設置為
timeout(1000), margin(500), skewTimeout(125)
查看其它的日志信息,沒有發現明顯的錯誤信息,因此懷疑是oprocd的時間參數設置不當。
修改參數如下:
#crsctl set css diagwait 13 -force修改參數時,需要注意如下幾個事項
當我們設置diagwait參數時,需要停止所有rac節點的集群活動,停止順序如下(如果集群式活動的,修改diagwait有可能會損害ocr):
1,以root用戶在所有節點執行
#crsctl stop crs #<CRS_HOME>/bin/oprocd stop2,確認所有節點的進程已經停止
#ps -ef |egrep "crsd.bin|ocssd.bin|evmd.bin|oprocd"3,修改參數,僅僅在一個節點修改就可以了
#crsctl set css diagwait 13 -force4,查看參數修改情況
#crsctl get css diagwait5,啟動集群節點
#crsctl start crs #crsctl check crs修改參數後,集群服務運行正常,沒有再自動重啟過。