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

DB2 程式設計技巧(七):系統管理實務——安裝、建庫、遠端配置、實例控制、連線監控、配置調優、環境變數、死鎖分析

     編輯:DB2 綜合知識

DB2 系統管理核心操作指南

4.1 DB2 安裝 (Windows 98 修正見上篇)

標準安裝流程請參考官方 Quick Beginnings 指南。

4.2 建立 DATABASE

CREATE DATABASE db_name AUTOMATIC STORAGE YES ON path USING CODESET UTF-8 TERRITORY US

4.3 手工遠端資料庫別名配置

CATALOG TCPIP NODE node_name REMOTE server_ip SERVER port_number
CATALOG DATABASE db_name AS alias_name AT NODE node_name
-- 驗證
LIST NODE DIRECTORY
LIST DATABASE DIRECTORY

4.4 實例啟動/停止

db2start
db2stop [FORCE]

4.5 連線資料庫與查看當前連線

db2 CONNECT TO db_name USER user USING pass
db2 LIST APPLICATIONS [FOR DATABASE db_name] [SHOW DETAIL]

4.6 DB2 管理伺服器 (DAS) 啟動/停止

db2admin start
db2admin stop

4.7 查看/停止當前應用程式

db2 LIST APPLICATIONS
db2 FORCE APPLICATION (appl_handle)

4.8 列出實例下所有資料庫

db2 LIST DATABASE DIRECTORY

4.9 資料庫配置參數調整

GET DATABASE CONFIG FOR db_name
UPDATE DATABASE CONFIG FOR db_name USING PARAM VALUE
RESET DATABASE CONFIG FOR db_name

關鍵參數:

  • SORTHEAP:排序堆大小 (調大可改善排序效能,但需配合 SHEAPTHRES)
  • LOGFILSIZ、LOGPRIMARY、LOGSECOND:交易日誌大小與數量
  • APPLHEAPSZ:應用程式堆大小 (不足時調大)

4.10 實例 (DBM) 配置參數調整

GET DBM CONFIG
UPDATE DBM CONFIG USING PARAM VALUE
RESET DBM CONFIG

關鍵參數:

  • MON_LOCK = ON:啟用鎖監控
  • DIAGLEVEL:診斷等級 (1~4,預設 3)

4.11 DB2 環境變數

關鍵變數:DB2INSTANCE、DB2PATH、CLASSPATH (含 db2java.zip)、PATH (含 SQLLIB/BIN)、LANG/LC_ALL (語系)。

4.12 DB2 命令環境設定

Linux/UNIX:. /home/db2inst/sqllib/db2profile 或加入 .profile/.bash_profile。Windows:系統環境變數或 db2cmd 視窗。

4.13 變更隔離等級

  • 資料庫級:UPDATE DB CFG USING DFT_QUERYOPT ...
  • 陳述式級:WITH UR/CS/RS/RR
  • CLI/ODBC:SQLSetConnectAttr(..., SQL_ATTR_TXN_ISOLATION, ...)

4.14 管理 DB/INSTANCE 參數自動化

建立腳本定期 GET ... CONFIG 備份,異動前 RESET 後 UPDATE,變更後 db2stop/db2start 生效。

4.15 升級後消除版本問題

執行 db2iupdt 更新實例,db2updv8 (V8) / db2upd (V9+) 更新資料庫,重新綁定套件 db2rbind。

4.16 死鎖分析

-- 開啟鎖事件監控
CREATE EVENT MONITOR deadlock FOR DEADLOCKS WRITE TO FILE 'path'
SET EVENT MONITOR deadlock STATE 1
-- 發生死鎖後分析輸出檔案
-- 或使用 db2pd -locks -agents -transactions
-- 系統監控快照
GET SNAPSHOT FOR LOCKS ON db_name

掌握以上操作,可覆蓋 DB2 系統管理 90% 以上日常與突發場景。

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