實例生命週期
| 指令 | 作用 | 備註 |
db2start | 啟動實例 | 啟動 DBM 後台進程,非單一資料庫 |
db2stop | 停止實例 | 強制斷開所有連線,慎用 |
db2start admin | 啟動管理伺服器 | DAS,圖形工具遠端管理需此 |
db2stop admin | 停止管理伺服器 | |
澄清:RESTART DATABASE 非重啟資料庫,而是將非正常關閉導致不一致的資料庫恢復一致狀態(前滾/回滾),完成後連線保持。
目錄與連線
# 目錄資料庫/節點(相當於客戶端配置助手)
db2 catalog database at node
db2 catalog tcpip node remote server
db2 uncatalog database
db2 uncatalog node
# 連線
db2 connect to user using
db2 connect reset # 顯式斷開,良好習慣
db2 attach to # 實例級連線,執行實例管理命令
db2 detach
配置參數管理
# 資料庫管理器配置 (DBM CFG)
db2 get dbm cfg
db2 update dbm cfg using [immediate/deferred]
# 資料庫配置 (DB CFG)
db2 get db cfg for
db2 update db cfg for using
# 註冊變數
db2set -all
db2set = # 當前用戶
db2set -g = # 全域 (需實例重啟)
# 監視器開關
db2 get monitor switches
db2 update monitor switches using LOCK ON STATEMENT ON ...
資訊列舉
db2 list applications [show detail] [for database ]
db2 list tablespaces [show detail]
db2 list tables [for schema ]
db2 list packages [for schema ]
db2 list indoubt transactions
db2 list history [backup|restore|rollforward] all for
統計與重組
# RUNSTATS:更新系統目錄統計,供優化器使用
db2 runstats on table . with distribution and indexes all shrlevel change
# REORGCHK:檢查是否需重組
db2 reorgchk update statistics on table all
# REORG:重組表/索引
db2 reorg table . [index ] [allow read/write access]
# REBIND:統計更新後重新綁定靜態套件
db2 rebind all
備份與恢復
# 備份(AIX 需 WITH n BUFFERS BUFFER size)
db2 backup database to [online] [compress] [include logs]
# 還原
db2 restore database from taken at [into ]
# 前滾
db2 rollforward database to end of logs [and complete] [overflow log path ]
# 列出歷史
db2 list history backup all for
注意:備份/還原作業系統必須相同(同位數、同核心版本)。
資料移動三劍客
| 工具 | 適用場景 | 檔案格式 | 關鍵差異 |
| EXPORT | 導出資料/結構 | DEL/IXF/WSF | SQL 執行,支援 SELECT 條件 |
| IMPORT | 小量導入、需觸發器/RI | DEL/ASC/IXF/WSF | 逐列 INSERT,記錄日誌,支援 REPLACE/INSERT/INSERT_UPDATE |
| LOAD | 大量載入、效能優先 | DEL/ASC/IXF/WSF + 游標/管道 | 四階段、不記日誌、不可前滾、索引重建、支援異常表/DUMPFILE |
檔案格式選擇
- DEL:分隔符 ASCII,通用性最強,跨平台首選
- ASC:定長 ASCII,無分隔符,位置對齊,舊系統相容
- IXF:DB2 專用二進制,含結構定義、資料、索引定義,僅 DB2 間遷移
- WSF:試算表格式,不建議使用
IMPORT/LOAD 關鍵選項
# 模式
INSERT -- 追加
INSERT_UPDATE -- PK 存在則 UPDATE,否則 INSERT
REPLACE -- 截斷表後載入 (LOAD 專用)
REPLACE_CREATE -- 重建表後載入 (IMPORT 專用)
# 並行與效能 (LOAD)
CPU_PARALLELISM n
DISK_PARALLELISM n
DATA_BUFFER n_pages
FASTPARSE
ANYORDER
db2look / db2move:遷移神器
# db2look:逆向 DDL + 統計
db2look -d -e -o schema.sql -a -l -x -f -c -td %
# db2move:資料搬運
db2move export -sn -tn
db2move import -io replace
db2move load -io replace -l /tmp/loadmsg
強制應用與問題排查
db2 force application all
db2 force application (, )
db2pd -db -locks show detail # 低開銷鎖檢視
db2pd -db -agents # 代理狀態
db2pd -db -transactions # 事務詳情
CLP 互動模式技巧
db2 進入互動模式(提示符 db2 =>),輸入 ? command 看語法
db2 -tf script.sql 執行腳本,-v 回顯、-z log.txt 記錄輸出
db2 -x "query" 純結果輸出(無表頭/列數),適合腳本嵌入
- 上一篇文章: DB2 8.1 認證考試大綱全解析:四大考試代碼 700/701/703/704 知識點對照
- 下一篇文章: SQL 基礎精要速查手冊:DDL/DML/DCL、數據類型、高級查詢與常用函數
Copyright ©
程式碼之家 All Rights Reserved