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

Linux 命令列手動建立第二個 DB2 實例完整實錄 (DB2 V8)

     編輯:DB2 教學

Linux 下不使用圖形化工具建立第二個 DB2 實例 (db2inst2) 完整步驟

當無法使用 DB2 安裝媒體的圖形化實例建立功能時,可透過命令列手動完成。本文記錄在既有 db2inst1 環境下,手動建立 db2inst2 實例的完整流程,含目錄準備、用戶建立、實例創建、資料庫與驗證。

環境基線

  • DB2 安裝路徑:/opt/IBM/DB2/V8.1
  • 既有實例:db2inst1 (目錄 /home/db2inst1)
  • 目標:建立 db2inst2 實例

步驟 1:建立實例家目錄並檢查磁碟空間


df -k                    # 確認剩餘空間足夠
cd /home
mkdir db2inst2

步驟 2:建立實例用戶與群組


# 建立群組
groupadd db2grp1         # 主群組 (可共用既有)
groupadd db2inst2        # 實例專屬群組 (可選)

# 建立用戶 (主目錄指向 /home/db2inst2, 主群組 db2grp1, 附屬群組 db2inst2)
useradd -m -d /home/db2inst2 -s /bin/bash -g db2grp1 -G db2inst2 db2inst2

# 設定密碼 (root 下可先清空再由用戶自行設定)
passwd -d db2inst2       # 清空密碼
su - db2inst2
passwd                   # 用戶自行設定新密碼

步驟 3:建立 DB2 實例


# 切換至 root
cd /opt/IBM/DB2/V8.1/instance
./db2icrt -u db2inst2 db2inst2
# -u 指定 fenced 用戶,此處同用戶充當 (簡化測試環境)
# 生產環境建議: ./db2icrt -u db2fenc2 db2inst2

步驟 4:建立資料庫與驗證


# 切換至實例用戶
su - db2inst2

# 若需指定資料庫目錄,先建立並授權
mkdir -p /home/db2inst2/pending
chown -R db2inst2:db2grp1 /home/db2inst2/pending

# 建立資料庫 (指定 codeset 與 territory)
db2 create db gpending on /home/db2inst2/pending using codeset UTF-8 territory US

# 連線驗證
db2 connect to gpending
# 輸出應包含:
# Database server = DB2/LINUX 8.2.7
# SQL authorization ID = DB2INST2
# Local database alias = GPENDING

# 建表測試
db2 "create table test (id int, name varchar(20))"
db2 "insert into test values (1, 'test')"
db2 "select * from test"
db2 "list tables for all"   # 可見剛建立的表

常見問題與注意事項

  • 用戶/群組 ID 一致性: 多節點環境下,所有節點的同名用戶/群組 UID/GID 必須完全一致
  • Fenced 用戶分離: 生產環境務必建立獨立 fenced 用戶 (如 db2fenc2),避免 UDF/預存程序故障影響實例
  • 通訊配置: 新實例需個別配置 db2set DB2COMM=TCPIP 並更新 svcename (指定唯一埠號)
  • 自動啟動: db2set DB2AUTOSTART=YES (非 HA 環境)
  • 權限問題: 實例家目錄擁有者必須為實例用戶,權限 750 或 700

結語

雖然手動建立實例步驟較繁瑣,但能深入理解 DB2 實例架構。生產環境強烈建議使用 db2setup 或回應檔安裝,減少人為錯誤風險。

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