程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 在UNIX 和Linux平台上部署 IBM DB2 產品

在UNIX 和Linux平台上部署 IBM DB2 產品

編輯:DB2教程

簡介

在數十、數百或者數千台基於 UNIX 和 Linux 平台的客戶機和服務器上部署 IBM_ DB2 產品,包括 IBM DB2 Universal Database (DB2 UDB) 和 DB2 Connect,這看起來似乎是一件令人望而生畏的任務。

本文講述了如何跨多台機器在 UNIX 和 Linux 平台上快速、輕松和一致地部署 DB2 產品。本說明書可用於安裝客戶機、服務器、並行服務器和 FixPak。本文主要討論 UNIX 和 Linux 平台上的 DB2 Version 8 產品家族。本說明書與前一版本類似,並且在未來版中也會繼續保持類似特點。

為了簡單起見,文中的例子使用 Bourne shell 語法。其他 shell 用戶將需要作適當的調整。

DB2 產品

支持 UNIX 和 Linux 的 DB2 家族有 15 種以上的 Version 8 產品,需要根據平台來選擇產品,因此,如果對 DB2 產品線不熟悉,選擇正確的產品將會是一項頗具挑戰性的任務。為了幫助您確定在計算機操作環境中安裝哪一種 DB2 產品,我們提供了以下產品概覽。

本概覽不是為了詳細描述每一種產品的許可條款,而是旨在綜述每一種產品的特性和使用場景。此外,本概覽並未涉及所有的 DB2 產品,而只是根據 PMR、新聞組帖子以及與 IBM 客戶的溝通,討論那些在功能上最容易產生混淆的產品。

注意,並非所有產品都適用於所有平台。

DB2 客戶機

有四種 DB2 客戶機產品,分別具有不同級別的功能性。

DB2 Run-time ClIEnt 是適用於那些只需要 DB2 客戶機支持應用程序與遠程 DB2 服務器通信,而不需要管理任何服務器的計算機。因此沒有提供任何圖形工具。但是,任何使用 DB2 UDB 或者 DB2 Connect 的應用程序都應當可以通過該產品運行。總的來說,該產品對於大多數應用程序來說是必需的,無論應用程序是第三方提供的還是內部開發的。

DB2 Administration Client 是專為 DB2 管理員設計的。它具有 DB2 Run-time Client 的全部功能,並增加了所有的圖形化工具。注意,DB2 Administration Client 的精簡安裝在功能上等同於 DB2 Run-time ClIEnt 的精簡安裝。

DB2 Application Development Client 是專為編寫軟件來使用 DB2 產品,或者編譯針對 DB2 API 軟件的開發人員設計的。它具有 DB2 Administration ClIEnt 的所有功能,並增加了可用於應用程序開發的附加圖新工具。

DB2 Connect Personal Edition 是一個經過許可的客戶機,它具有 DB2 Application Development ClIEnt 的所有功能,並增加了連接主機數據庫(例如 DB2 for MVSTM)的功能。

因為每一個客戶機都包含在其之前的客戶機的全部功能,所以您幾乎不需要在一台機器上安裝多個客戶機。多客戶機通常僅在更改計算機角色時才安裝。例如,發生在用戶提出訪問主機數據庫的新需求,從而需要遷移到 DB2 Connect Personal Edition 中時。在這些情況下,您可以通過在舊客戶機之上簡單地安裝新客戶機,並重新運行所有 FixPak 來執行升級。

DB2 服務器

DB2 服務器的擴展方式與客戶機一樣。所有的 DB2 服務器都是經過許可的。

DB2 UDB Personal Edition 是一款嚴格的台式機產品,因為它不允許遠程客戶機的連接。它在某種程度上類似於 DB2 Application Development ClIEnt,同時添加了僅允許本地客戶機訪問本地數據庫的功能。

DB2 UDB Express Editions 是專為具有少數客戶機的中小企業設計的。它們具有 DB2 UDB Personal Edition 的全部功能,而且允許遠程連通性。

DB2 UDB Workgroup Server Editions 是專為大規模服務器設計的。它們具有 DB2 UDB Express 的全部功能,而且具有更加廣泛的許可。

DB2 Connect Enterprise Editions 是專為客戶機連接主機數據庫(例如 DB2 for MVS)的三層選通(three-tIEr gating)而設計的。它們具有 DB2 Connect Personal Edition 的全部功能,並增加了網關功能。

DB2 UDB Enterprise Server Edition 是專為大型和超大型數據庫而設計的。如果不考慮數據庫分區特性(DPF),則它在功能上等同於 DB2 UDB Workgroup Edition 和 DB2 Connect Enterprise Edition 的組合。利用 DPF,Enterprise Server Edition 還允許多台機器作為單個無共享集群(single shared-nothing cluster)共同運行,利用多台機器模擬單一數據庫服務器。

因為每一台服務器具有所有客戶機的全部功能,包括圖形工具和應用程序開發工具,所以沒有理由再在一台已經安裝服務器的計算機上安裝客戶機。這顯著地簡化了 DB2 產品的部署。

開發人員版本

DB2 開發人員版本僅在許可方面與上述產品不同。但是,有跡象表明,確保在開發環境中的大規模部署中包含該產品引起不少混亂。

DB2 UDB Personal Developer' s Edtion 是 DB2 UDB Personal Edition 面向小型開發團隊的有限許可版本。它包含有限許可的 DB2 UDB Personal Edition 和 DB2 Application Development ClIEnt,允許單個開發人員針對本地服務器編寫、編譯和測試代碼。雖然它還允許開發使用遠程數據庫,但是遠程數據庫產品不包含在該軟件包中。由於 DB2 API 隱藏了一些細節(如數據庫的實際位置),在 DB2 UDB Personal Edition 中的開發與在任何 DB2 UDB 服務器(如 DB2 UDB Enterprise Server Edition)中的開發一樣。

DB2 UDB Universal Developer's Edition 是一種全功能的、一站式的開發產品,面向大型開發團隊。它包含幾乎全部的 DB2 for Linux、UNIX 和 Windows 產品,包括一些本文中沒有涉及到的產品。因為它包含所有平台的全部服務器產品,所以它可以用於開發多平台,或者開發不受 DB2 UDB Personal Developer's Edition 支持的平台。

因為除了其許可條款之外,Developer's Edition 產品與先前產品一樣,所以不必在現有產品之上安裝這些產品,反之亦然。

部署概覽

在 UNIX 和 Linux上執行 DB2 產品部署的步驟如下:

1. 創建代碼服務器

2. 計劃部署

2.1 可選,創建一份響應文件,以自動化配置。

3. 創建一份部署腳本

4. 在所有機器上運行部署腳本

創建代碼服務器

創建代碼服務器的目的是加速部署進程。事實上,把 CD 從一個系統轉移到另一個系統並不是在合理利用管理員的時間,甚至將 CD 安裝在一台機器中,然後通過網絡文件系統(例如 NFS、DFS、AFS 等等)安裝,將減緩所有的部署,因為後者需要不斷的跳躍,以響應網絡請求。

相反,通過將 CD 復制到硬盤中,我們可以充分利用大多數物理文件系統驅動程序提供的縮短的查找時間和增大的緩沖區。

此外,在 DB2 Version 8 中,一些產品在其 CD 中是以壓縮形式針對某些平台提供的。對於這些產品來說,我們必須復制到本地磁盤,然後解壓縮和釋放文件,因為我們無法簡單地從 CD 直接共享鏡像文件。

根據您所擁有的產品和平台,您可能可以直接復制文件,否則您必須解壓縮鏡像文件。如果您可以復制鏡像文件,我們建議以 root 權限使用以下命令:

# (cd /cdrom; tar cf - *) | (cd /bigshareddisk; tar xf -)

使用磁帶存檔文件的基本意圖在於並不是所有的平台都具有可以保持符號鏈接(symbolic link 或 symlink)的 cp 命令。相反,任何可以保持符號鏈接、所有權和權限的等同命令也同樣適用。

如果您有一份預壓縮的鏡像文件,則需要使用的命令是:

# (cd /cdrom; zcat *.tar.Z) | (cd /bigshareddisk; tar xf -)

相反,在 Linux 上,磁帶存檔文件可以使用 Z 選項來實現上述命令:

# cd /bigshareddisk; tar xzf /cdrom/*.tar.Z

注意,在這一點上建議不要使用 Microsoft® Windows® 文件服務器。Windows 文件服務器將丟失文件權限,而且將不能處理名稱與自身不同的文件,這種情況在 DB2 for Solaris 和 DB2 for Linux 產品中都存在。

下一步驟是通過網絡文件系統導出 /bigshareddisk。具體操作步驟超出了本文所討論的范圍。注意,盡管無法將 DB2 本身安裝到 NFS 分區中,但是可以通過 NFS 安裝 DB2。

計劃部署

DB2 for UNIX and Linux 可以使用多種方式進行非交互式的安裝。選擇哪一種方法取決於您的偏好。所有的方式都可以交替使用。即,您可以使用一種方式執行安裝,以後在同一台機器上執行的另一安裝則可以使用另一種方式。選擇一種方法並不代表您需要永遠使用該方法。

對於 FixPaks 來說,僅有一種方式可用。

極力推薦,在任何部署之前,您應該在一台測試機器上測試安裝,以檢驗部署在每一台機器上會生成什麼。此外,甚至在測試部署之前,極力推薦在設計非交互式 DB2 部署之前至少使用一次圖形安裝程序。圖形安裝程序可以幫助您理解非交互式安裝模式中的條款和關鍵詞。FixPaks 沒有任何圖形安裝程序。

響應文件安裝

推薦的方法是響應文件安裝。該方式涉及到創建一份響應文件(將在本文後面講述),然後針對響應文件運行 db2setup。推薦使用該方法是因為它可以提供很多優勢:

• 預先的響應文件語法檢查意味著,如果 db2setup 接受了響應文件,則它很可能可以運行。

• 它允許您選擇與圖形安裝程序一樣或者更好的粒度來安裝。

• 它允許您配置圖形安裝程序配置的所有內容,而不需要知道其中發生的情況。

• 它允許您與安裝同步設置數據庫管理程序配置 (dbm cfg) 和 DB2 配置文件注冊表參數。

• 可以完全解釋所有的輸出和日志文件。

db2_install

您可以使用的另一種方法是 db2_install 腳本。它是一種瘦型粗粒度的包裝程序,僅僅調用底層操作系統安裝程序(AIX®、Solaris、HP-UX 和 Linux 操作系統上的 installp、pkgadd、swinstall 或 rpm)安裝整個產品。與響應文件的安裝相比,這種方法有以下局限性:

• 粗粒度安裝意味著在安裝時無法選擇所有備選組件。

• 其中不包括語言選擇。您必須使用另一種方法來安裝英語之外的語言。

• 其中不包括 DB2 Administration Server (DAS) 的配置或者實例。

但是,它不需要設置任何響應文件。

操作系統安裝程序

這種方法涉及到調用可以直接應用於平台的操作系統安裝程序。有關執行此方法的更多信息,請參見操作系統文檔和相關主頁。與響應文件安裝相比,該方法具有以下局限性:

• 您必須按照正確的順序手動安裝組件。

• 組件名稱通常不像響應文件標識符那樣可讀取或者直觀。

• 其中不包含任何 DAS 配置或者實例。

與使用 db2_install 相比,該方式具有以下不同點:

• 更加靈活,因為您僅安裝了所需的組件。

• 您可以安裝英語之外的語言。

• 需要更多設置時間,因為您必須選擇需要安裝的組件。

FixPak 安裝

FixPak 安裝通常是非交互式的,因此常常用於大規模部署。

創建響應文件

創建響應文件是一個可選但推薦采用的步驟。響應文件可以顯著地簡化安裝腳本。響應文件不可以用於 FixPak 安裝。

響應文件可能會因為目標環境不同而顯著不同。本文主要針對三種環境:客戶機、單機服務器(例如,除了 Enterprise Server Edition with DPF 以外的任何服務器)和並行服務器(例如,Enterprise Server Edition with DPF)。

對於按照上述三種環境的組合部署的機器來說(例如安裝了 Relational Connect for DB2 Data Sources 的數據庫服務器,同時還必須作為另一個數據庫的客戶機),可以將這些環境組合在一起。但是,為了簡單起見,本文不討論這些組合。

響應文件

創建響應文件的最簡單方式是使用 db2setup 圖形界面。通過啟動 db2setup,然後保存響應文件,您可以以圖形方式選擇需要安裝的組件。然後,您可以通過從 CD 中提供的示例響應文件中復制附加條目來調整響應文件。

創建響應文件的另一種方式是從 CD 中復制示例響應文件,然後修改該示例響應文件。示例存放在 db2/pto/samples 目錄中,plat 是平台標識符。例如,db2/linux/samples/db2rtcl.rsp 是 DB2 for Linux CD 中面向 Linux 的 Run-time ClIEnt 示例響應文件。

盡管極力推薦在部署之前首先在一台機器上進行測試,但是響應文件非常易於使用。

關於響應文件需要知道的第一件事是任何以 * 或者 # 字符開始的行都將作為注釋忽略。

* This is a comment.

任何行的末端包含 ** 或者 ## 序列的行也都將作為注釋被忽略。

PROD = ENTERPRISE_SERVER_EDITION ** This is a comment.

所有的數據均以 KEYWord=VALUE 格式顯示。在以上示例中,關鍵詞是 PROD,而 PROD 關鍵詞的給定值是ENTERPRISE_SERVER_EDITION。

每一個關鍵詞被看作是一個標記。即,該關鍵詞保留不翻譯。大多數值也都是標記。例如,在以下的行中

INSTALLJTYPE = TYPICAL

關鍵詞和值都是標記,因此不應當被看作英文單詞。響應文件安裝程序可以識別這些標記,它所識別的標記都是一樣的,不考慮其語言。

未注釋的示例響應文件中的條目被看作是強制性的,必須填寫才能進行安裝。

最後,很多關鍵詞直接映射到您在圖形安裝期間可能會遇到的問題中,因此掌握圖形安裝可以幫助理解響應文件。

PROD

PROD 關鍵詞指定需要安裝的產品。每一份示例響應文件都已經預填入該關鍵詞。不需要對其進行任何改動。

INSTALL_TYPE

該關鍵詞指定所需安裝的類型:精簡、典型、自定義。如果選擇典型,則還可以選擇所有典型選項。如果選擇自定義,則可以選擇需要安裝的所有組件。如果選擇精簡,則所有這些可選環節都將被忽略。

TYPICAL_OPTION

如果已經選擇安裝類型為 TYPICAL(典型),則您可以選擇其他的典型選項集。例如,如果您需要典型安裝具有 Data Warehouse 選項的 Enterprise Server Edition,您可以在此作出選擇。只需去掉不需要在部署中安裝的每一個選項前的星號即可。如果安裝類型不是 TYPICAL,則忽略該關鍵詞。

COMP

如果已經選擇安裝類型為 CUSTOM(自定義),則可以通過從所需組件中去掉注釋字符來選擇其他組件。對比來說,Linux 和 UNIX 響應文件通過說明使用典型安裝和每一個典型選項會選擇哪一些組件來區分組件。如果安裝類型不是 CUSTOM,則忽略該關鍵詞。

LANG

如果您需要使用英語以外的語言,請選擇該關鍵詞。不同於圖形安裝程序的是,如果當前語言不是英語,則響應文件安裝程序不會自動選擇當前語言。此處的語言標記和具有 -i 選項的安裝程序使用的那些標記一樣。

SELECT_INSTALLED_LANGS

如果設置為 YES(是),將自動選擇 DB2 已經安裝的所有語言。這非常適用於在同一個系統中安裝第二種產品,同時想使所有新功能保持原有的語言設置。

ENCODING

如果沒有選擇任何編碼方法,則自動安裝全部編碼方法。對每種語言來說,不同的編碼方法都適用。如果不需要全部的編碼方法,您可以選擇所需的子集。注意,ISO 或者 EUC 編碼方法需要作為某些語言的反編編碼方法(fall-back encoding)。

LIC_AGREEMENT

該參數向響應文件安裝程序表明您已經讀取並同意在 DB2 介質上所包含的許可。您可以在 db2/iceme/locale.encoding 目錄中找到該許可。默認值是 DECLINE(拒絕)。您必須將其更改為 ACCEPT(接受)才能繼續安裝。

實例創建設置

這些設置可用於創建作為安裝一部分的實例。您可以通過使用多個 INSTANCE 名稱,在一次安裝中創建多個實例。例如,您可以創建 INSTANCE=instancel 和 INSTANCE=instance2。對每一個實例來說,您需要利用 instance1和 instance2前綴創建所需設置的剩余部分。

大多數這些設置要麼是數據庫管理程序配置設置,要麼是 DB2 配置文件注冊表設置(所有這些可配置的設置都應當包含在響應文件中)。

其他設置允許您創建新用戶,包括密碼。如果選擇利用響應文件創建新用戶,則建議使用正確的文件系統安全性,確保在執行安裝的每一台機器上僅 root 可以讀取響應文件,因為密碼存放在純文本中。相反,您可能希望在使用響應文件之前,首先創建用戶帳戶,並設置密碼。

實例用於存儲 DB2 配置。這包括服務器的本地數據庫和客戶機及服務器的遠程數據庫。

如果是從前一版本中遷移實例,則不需要創建新實例。DB2 需要一個實例來執行所有操作,無論是托管本地數據庫還是連接到遠程數據庫。

不同於將所有的設置存放在響應文件中,一種替代方案是使用 db2cf exp 命令將配置從現有實例中導出。在這種情況下,您可以按需在測試機器上精確配置主實例(包括性能調優和編目遠程節點與數據庫,但是不包括本地數據庫),然後使用命令

“db2cfexp template”導出配置。在部署期間,您需要使用 db2cfimp 導入指定文件中存儲的模板。例如,“db2cf exp db2inst.exp template”可以創建一份描述當前實例的名為 db2inst.exp 的文件。

管理服務器設置

這些設置可以用於創建 DAS。如果在示例響應文件的某一節中已經說明,某些產品允許使用管理服務器,則這些產品必須具有管理服務器。如果在目標機器上一台管理服務器也沒有,則必須使用該節來創建管理服務器。與 DAS 關聯的用戶必須不同於任何實例使用的用戶。

如果是該版本的首次安裝,您僅需要創建新的 DAS。例如,如果您已經安裝 Workgroup Server Edition,並且需要升級到 Enterprise Server Edition,則前次安裝中的現有 DAS 足以勝任。在這種情況下,您可以注釋 Administration Server 設置。

客戶機部署事項

由於客戶機安裝的主要目的是與遠程服務器通信,從正在運行中的客戶機導出客戶機配置文件可以簡化部署,因為這樣可以使編輯節點和數據庫目錄的工作更加輕松。

單服務器部署事項

響應文件安裝無法創建本地數據庫。這些數據庫需要作為部署腳本的一部分創建。

並行服務器部署事項

並行環境中的服務器實例僅需要在一台計算機上創建實例。通常是安裝的第一台計算機進行,並且在該計算機的本地磁盤上創建。該計算機被稱作“instance owning computer”。集群中其他的計算機不必有任何創建的實例。這些計算機被稱作“node(節點)”。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved