資料庫報skgpspawn failed:category = 27143

浪漫雙魚發表於2011-01-04

  今天一臺生產庫掛死,最後只有通過重啟資料庫解決了問題。
  資料庫日誌報如下錯誤
---------------------
Tue Jan  4 09:02:46 2011
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
skgpspawn failed:category = 27143, depinfo = 23, p = pipe, loc = skgpspawn2
----------------------
作業系統日誌報如下錯誤
----------------------

Jan  4 09:07:59 cqrm1-1 cmcld: Unable to copy file to cqrm1-1: I/O error
Jan  4 09:07:59 cqrm1-1 cmcld: Failed to dump Flight Recorder log buffer.
Jan  4 09:08:13 cqrm1-1 prngd[2938]: pipe() failed: File table overflow
Jan  4 09:09:10 cqrm1-1 cmclconfd[7615]: Unable to lookup cluster information in CDB: File table overflow
Jan  4 09:09:10 cqrm1-1 cmclconfd[7615]: cl_msg_tcp_send: Invalid argument
Jan  4 09:09:04 cqrm1-1 prngd[2938]: pipe() failed: File table overflow
Jan  4 09:09:10 cqrm1-1 inetd[1062]: hacl-cfg/udp: Exit status 1
Jan  4 09:09:55 cqrm1-1 prngd[2938]: pipe() failed: File table overflow

此時在系統上執行任何命令都會報錯,在準備進行關電源重啟主機的時候,命令可以用了,通過sar -v 5 10發現file table已經達到了30000多,已經滿了,從系統日誌也可以發現這個問題。

  由於是生產庫,所以來不及慢慢分析原因,趕快趁系統能動的時候敲下了停包命令,然後殺LOCAL=NO的程式,重啟了資料庫,恢復正常。

  資料庫啟動後,發現io等待異常的大,經檢查,發現儲存的電池壞了一個,導致一個控制器不能使用,而oracle就由於效能嚴重下降,導致session數增加,最終導致了file table的溢位。
  此問題最終通過更換磁陣的電池而解決。

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

相關文章