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

DB2 Fixpack 升級全流程指南:從停庫到重綁包的標準化操作手冊

     編輯:DB2 教學

升級前置條件與規劃

DB2 Fixpack 升級屬於高風險變更,務必在維護窗口執行,並完成全量備份。本文基於 DB2 V8 Fixpack 5 於 AIX/Solaris 環境的實戰經驗整理。

階段一:優雅停止所有實例與 DAS

1. 切換至 root 權限

su - root

2. 逐實例停止數據庫服務

su - 
. $HOME/sqllib/db2profile
db2 force applications all
db2 terminate
db2stop
db2licd -end  # 每個物理節點均需執行
exit

關鍵提示: HACMP 環境下必須使用 ha_db2stop,否則會觸發誤切換。

3. 停止管理服務器

su - 
. $HOME/das/dasprofile
db2admin stop
exit

階段二:解包與安裝 Fixpack

1. 解壓安裝介質

  • AIX 4.3.3 / Solaris: FP5_$PTF_ESE_MFP.tar.Z
  • AIX 5L: FP5_$PTF_ESE_MFP_SBCS.tar.Z 或 FP5_$PTF_ESE_MFP_DBCS.tar.Z

2. 執行安裝程序

cd 
./installFixPak

默認會 commit(落實) 所有更新的檔案集。若需僅 apply(應用) 不落實,使用 ./installFixPak -a。生產環境建議直接 commit。

階段三:實例與 DAS 升級

必須步驟: 安裝新代碼後,所有實例均需更新以使用新級別庫文件。

# 以 root 執行
/instance/db2iupdt 
/instance/dasupdt 

其中 INSTHOME 為 DB2 安裝路徑(如 /usr/opt/db2_08_01)。

階段四:啟動驗證與重綁包

1. 啟動實例與 DAS

su - 
db2start
# DAS
su - 
db2admin start

2. 清理 IPC 資源

ipclean

3. 重綁系統包與 CLI 包

連接目標數據庫執行:

db2 terminate
db2 CONNECT TO 
db2 BIND @/db2ubind.lst BLOCKING ALL GRANT PUBLIC
db2 BIND @/db2cli.lst BLOCKING ALL GRANT PUBLIC
db2 terminate

其中 bnd_path 通常為 $HOME/sqllib/bnd。分區環境需在所有節點同步執行上述步驟,並確保所有物理機的 Fixpack 層級一致後再啟動實例。

常見坑點總結

  • 未以 root 執行 db2iupdt 導致權限不足。
  • HACMP 環境誤用 db2stop 觸發資源組切換。
  • 分區環境節點間 Fixpack 版本不一致導致啟動失敗。
  • 忽略重綁包導致應用報 SQL0805N (package not found)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved