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

DB2 客戶端遠端連線完整配置指南:編目節點、資料庫、代碼頁、驗證

     編輯:DB2 教學

DB2 客戶端遠端連線完整配置指南:編目節點、資料庫、代碼頁、驗證

DB2 遠端連線核心在於「編目」:將遠端伺服器與資料庫映射到本地編目檔。本文記錄 Windows/Linux 客戶端連線 Linux/Windows 伺服器的標準化 5 步驟流程與關鍵檢查點。

假設環境

  • 客戶端 IP:192.168.42.147 (Windows/Linux)
  • 伺服器端 IP:192.168.42.102 (Windows/Linux)
  • DB2 埠號:50000
  • 目標資料庫:coshine

標準 5 步驟

  1. 編目遠端節點 (客戶端執行):
    db2 catalog tcpip node test remote 192.168.42.102 server 50000
    # test = 本地節點別名 (自訂)
    # server = 伺服器端 SVCENAME 埠號
  2. 查詢伺服器端實際埠號:
    # Linux 伺服器: cat /etc/services | grep db2inst1
    # db2inst1 50000/tcp
    
    # Windows 伺服器: type C:\WINNT\System32\drivers\etc\services
  3. 編目遠端資料庫:
    db2 catalog db coshine at node test
    # coshine = 伺服器端資料庫名
    # test = 步驟1 定義的節點別名
  4. 生效編目快取**:
    db2 terminate
  5. 設定代碼頁 (關鍵!)**:
    # 1. 伺服器端查看
    db2set -all
    # 找到 DB2CODEPAGE=819 (或 1386 簡體中文)
    
    # 2. 客戶端設定相同值
    db2set DB2CODEPAGE=819
    # 或 1386 (簡體中文 GBK)
    # db2country=86 (中國)

連線驗證

db2 connect to coshine user <用戶名> using <密碼>
# 關鍵: user_name 是資料庫授權用戶,非 OS 用戶
# 密碼對應該授權用戶密碼

故障排查檢查清單

檢查項指令預期結果
網路通達ping 192.168.42.102可通
伺服器 DB2 啟動db2start (伺服器端)SQL1063N 成功
客戶端 DB2COMMdb2set -all | grep DB2COMMDB2COMM=TCPIP
SVCENAME 一致db2 get dbm cfg | grep SVCENAME50000 或服務名
代碼頁一致雙端 db2set DB2CODEPAGE相同值 (819/1386)
防火牆埠telnet 192.168.42.102 50000連線成功

代碼頁關鍵知識

  • db2set DB2CODEPAGE=1386 僅改變**環境變數**,不改變**資料庫建立時的代碼頁**
  • 資料庫建立後代碼頁**不可變更**
  • 客戶端與伺服器代碼頁**必須一致**,否則中文亂碼
  • 常用值:819 (ISO-8859-1)、1386 (GBK/簡體中文)、1208 (UTF-8)

SVCENAME 修正指令

# 若 SVCENAME 不正確
db2 update dbm cfg using SVCENAME db2inst1
# db2inst1 為 /etc/services 中定義的服務名 (對應 50000/tcp)

遵循此 5 步驟 + 檢查清單,可解決 95% 以上的 DB2 遠端連線問題。

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