首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

深度解析 DB2 Universal Database 進程架構

     編輯:DB2 教學

UNIX/Linux 管理員常透過 ps -ef 檢查 DB2 進程進行問題診斷與資源分析。Solaris/HP-UX 需用 /usr/ucb/ps -axw 才能看到完整引擎可調度單元(EDU)。Windows 下僅見單一 db2sysc 進程,EDU 以執行緒形式運行。本文系統說明各進程功能、啟動時機與配置影響,助你解讀 db2diag.log 並精準診斷效能瓶頸。

為何關注 DB2 進程?

真實案例:

  • 案例 1:電商網站特定時段回應緩慢,快照無異常。檢視進程發現 db2pclnr(I/O 清理器)佔 90%+ CPU。調整清理器觸發參數後,處理能力提升 50%+。
  • 案例 2:例行調優後仍現回應延遲,應用程式清單無異常。進程檢視發現 db2rebal 運行中——原為 40GB 表空間新增容器觸發重平衡。重平衡完成後效能恢復正常。

通知與診斷日誌關聯

db2diag.log 記錄含進程資訊:

2000-03-06-11.53.18.001160 Instance:myInst Node:000
PID:78121(db2agent (TEST)) TID:352
Appid:*LOCAL.payroll.000306140834
lock_manager sqlplrq Probe:111 Database:TEST
DIA9999E An internal return code occurred. Report the following:
"0xFFFFE10E".

PID 78121 對應 db2agent 連接 TEST 資料庫。識別進程角色能加速日誌分析。

代理進程模型

類型進程名角色
協調代理db2agent代表應用程式協調工作,透過 IPC/遠端協定與其他代理通訊。所有用戶端連線請求皆分配一協調代理
子代理db2agntp啟用 intra_parallel 時,協調代理將請求分派給子代理執行。完成工作後轉為閒置 db2agnta 進入代理池

代理池大小受 maxagents、num_poolagents 控制。其他代理類型(如並行恢復代理 db2agnsc)詳見後續章節。

無連線集中模式進程模型(非分區)
無連線集中模式進程模型(分區)

核心進程分類表

按功能分組(部分列舉):

  • 每實例基礎進程:db2sysc(主引擎)、db2wdog(看門狗)、db2gds(全域守護)、db2syslog、db2resync、db2ipccm(IPC 通訊管理)、db2tcpcm(TCP 通訊管理)
  • 每連線進程:協調代理 db2agent、子代理 db2agntp/db2agnta
  • 每資料庫進程:db2loggr(日誌讀取)、db2loggw(日誌寫入)、db2pclnr(頁面清理)、db2pfchr(預取)、db2dlock(死鎖偵測)、db2event(事件監視)
  • 分區環境專用:db2fcmd(快速通訊管理器)、db2acd(自動用戶端重導向)
  • 公用工具:db2bm(備份/還原)、db2vend(廠商儲存 API)、db2taskd(任務中心)
每實例進程表
每實例每連線進程表
每實例每資料庫進程表
功能分類其他進程表
常用執行檔表
Windows 服務進程表

實際輸出範例解讀

db2start 後(NUM_INITAGENTS=0):

root 49504 1 0 13:13:07 - 0:00 db2wdog
db2inst1 49180 49504 0 13:13:10 - 0:00 db2sysc
db2inst1 60680 49180 0 13:13:17 - 0:00 db2ipccm
...

連接 SAMPLE 後:出現 db2agent (SAMPLE)、3 個 db2pfchr(對應 NUM_IOSERVERS=3)、1 個 db2pclnr(對應 NUM_IOCLEANERS=1)。執行 db2 connect reset 後代理轉為 db2agent (idle) 留在池中。

總結

掌握進程模型、配置參數影響與實際輸出解讀,能顯著提升 DB2 管理診斷能力。謹記:切勿在正常環境直接干擾進程(如 kill -9),可能導致實例異常停止。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved