Db2
DB2 8.0 db2diag.log 中的錯誤
我們有一個非常古老的 PeopleSoft HR 系統,它在 DB2 8.x 上執行。我們每天多次在 db2diag.log 文件中收到以下錯誤。
2019-11-04-01.22.24.012784-300 E16054C794 LEVEL: Error (OS) PID : 229596 TID : 772 PROC : db2hmon 0 INSTANCE: hrprod NODE : 000 FUNCTION: DB2 UDB, oper system services, sqloPdbConnectSocket, probe:20 MESSAGE : ZRC=0x810F0019=-2129723367=SQLO_CONN_REFUSED "Connection refused" CALLED : OS, -, connect OSERR : ECONNREFUSED (79) "Connection refused" DATA #1 : String, 32 bytes Unable to connect socket on path DATA #2 : socket, 4 bytes 7 DATA #3 : sockaddr, 39 bytes 0x303B4F38 : 0001 2F75 7372 2F75 7365 7273 2F64 6232 ../usr/users/db2 0x303B4F48 : 6173 2F64 6173 2F74 6D70 2F64 6173 6E61 as/das/tmp/dasna 0x303B4F58 : 6D65 6470 6970 65 medpipe DATA #4 : File name, 37 bytes /usr/users/db2as/das/tmp/dasnamedpipe
我們不確定是什麼導致了錯誤,但錯誤中對 DAS 的引用讓我認為實例正在嘗試連接到 DAS 伺服器,或者可能是相反的方式。負責該系統的 DBA 表示,該錯誤已經出現了很長時間,他無法找出原因,但對功能沒有明顯的負面影響。他上週退休了。如果可能的話,我想解決這個問題。我不熟悉 8.4,它使用了 DAS,而不是需要 DAS 來管理多個實例,使用 GUI,在同一台伺服器上(伺服器上只有一個實例)。
非常感謝任何跟踪此問題的幫助。:)
理查德
如果它適用於您的情況,請檢查以下內容:
ECONNREFUSED (79) db2hmon 程序的 db2diag.log 中的“連接被拒絕”消息。
原因
DB2 Health Monitor 定期喚醒並檢查與 DB2 管理伺服器 (DAS) 的連接。
解決問題
當 DAS(DB2 管理伺服器)不活動時會報告這種類型的錯誤。當健康監視器喚醒時,它會檢查與 DAS 的連接。在這種情況下,連接被拒絕,因為 DAS 不存在或未啟動。
如果 DAS 未執行,這可能是 Health Monitor 無法連接到它的原因,您可以按照以下說明啟動它:
- 以 DAS 使用者身份登錄(可以是
dasuser
或類似使用者)。- 獲取配置文件以設置命令環境:
source $HOME/das/dasprofile
- 跑
db2admin start
要查看該命令的其他選項,您可以執行
db2admin -?
.您還可以通過執行確保 DAS 在伺服器啟動時自動啟動
dasauto -on
。