EEE for UNIX** 快速入門

在從屬站上架構 TCP/IP

本段假設 TCP/IP 可在從屬站及伺服器上作用。 請參閱軟體需求,取得適用於您的平台的通訊協定需求。 請參閱可能的主從式連接實務範例,取得適用於特定從屬站及伺服器之通訊協定。

若要在 DB2 從屬站上設定 TCP/IP 通訊,請執行下列步驟:

步驟  1.

識別和記錄參數值。

步驟  2.

架構從屬站:

  1. 解析伺服器的主電腦位址。
  2. 更新服務程式檔案。
  3. 將 TCP/IP 節點編入目錄中。
  4. 將資料庫編目。

步驟  3.

測試從屬站與伺服器之間的連接。



要訣

由於 TCP/IP 通訊協定的特性,當另一個主電腦上的友機故障時, TCP/IP 可能無法立即收到通知。因此,用 TCP/IP 存取遠端 DB2 伺服器的從屬站應用程式, 或是伺服器的對應代理程式,有時候會當掉。DB2 是使用 TCP/IP SO_KEEPALIVE socket 選項, 來偵測何時發生故障,以及 TCP/IP 連接何時中斷。

如果建立 TCP/IP 連接時發生問題,請參閱 Troubleshooting Guide 以取得如何調整此參數的資訊和其他一般 TCP/IP 問題的相關資訊。

步驟 1. 識別和記錄參數值

當繼續進行架構步驟時, 請完成下列表格中的您的值直欄, 在您開始架構這個通訊協定之前,您可以填入某些值。

表 14. 從屬站上的必要 TCP/IP 值
參數 說明 範例值 您的值

主電腦名稱

  • 主電腦名稱 (hostname) 或
  • IP 位址 (ip_address)

使用遠端伺服器工作站的 hostnameip_address

若要解析此參數:

  • 在伺服器上輸入 hostname 指令,以取得 hostname
  • 聯絡您的網路管理者,以取得 ip_address, 或輸入 ping hostname 指令。
  • 在 UNIX 系統上,您也可以使用 DB2/bin/hostlookup hostname 指令。

    其中 DB2 是安裝 DB2 的目錄。

  serverhost

9.21.15.235

 

服務程式名稱

  • 連接服務程式名稱 (svcename) 或
  • 埠號/通訊協定 (port_number/tcp)

services 檔案中必要的值

「連接服務程式」名稱是代表伺服器上連接埠號 (port_number) 的專有本端名稱。

埠號必須與伺服器服務程式檔案中, svcename 參數所對映的埠號相同。(svcename 參數位在伺服器上的資料庫管理程式架構檔中。) 此值絕不能為其它應用程式所使用, 而且必須是 services 檔案中唯一的值。

請確定您指定的埠號沒有被「快速通信管理程式 (FCM)」所使用。

聯絡您的資料庫管理員,以取得要用來架構伺服器的值。

 

server1

 

 

 

 

 

3700/tcp

 

 
節點名稱 (node_name)

本端別名或暱名,說明您嘗試連接的節點。您可以選取任何您想要的名稱; 不過,在您的本端節點目錄內,所有節點名稱值必須是唯一的。

db2node  

步驟 2. 架構從屬站

下列步驟會架構從屬站,以便使用 TCP/IP 與伺服器進行通信。 您可以將範例值換成您工作表中的值。

A. 解析伺服器的主電腦位址



捷徑

如果您的網路擁有一台名稱伺服器,或者您計劃要直接指定伺服器的 IP 位址 (ip_address), 則請略過此步驟,並進行 步驟 B. 更新服務程式檔案

從屬站必須知道它所要建立通訊之伺服器的 IP 位址。如果名稱伺服器不存在您的網路上,您可以直接指定一個主電腦名稱, 而此主電腦名稱必須對映於本端主電腦檔案中之伺服器的 IP 位址 (ip_address)。 請參閱表 15, 以取得特定平台之主電腦檔案的位置。

如果您計劃要支援使用「網路資訊服務程式 (NIS)」的 UNIX 從屬站, 而您沒有使用您網路上的名稱伺服器的話, 就必須更新您的 NIS 主要伺服器上的主電腦檔案。

表 15. 本端主電腦及服務程式檔案的位置
平台 位置
OS/2 etc 環境變數所指定。 輸入 set etc 指令, 以決定您的本端主電腦服務程式檔案的位置。
Windows NT 或 Windows 2000 位在 winnt\system32\drivers\etc 目錄中。
Windows 9x 位在 windows 目錄中。
UNIX 位在 /etc 目錄中。

編輯從屬站的主電腦檔案, 並針對伺服器的主電腦名稱來新增登錄項目。 例如:

   9.21.15.235     serverhost   # host address for serverhost

其中:

9.21.15.235
代表 ip_address

serverhost
代表 hostname

#
代表說明登錄的註解

如果伺服器所在的領域興從屬站不同,就必須提供完整的領域名稱, 例如 serverhost.vnet.ibm.com,其中 vnet.ibm.com 是領域名稱。

步驟 B. 更新服務程式檔案



捷徑

如果您計劃要用埠號 (port_number) 來將 TCP/IP 節點編入目錄中, 請略過此步驟,並跳至 步驟 C. 將 TCP/IP 節點編入目錄中

使用本端文字編輯器,將「連線服務程式」的名稱及埠號新增至 從屬站的服務程式檔案中,以取得 TCP/IP 支援。 例如:

   server1  3700/tcp  # DB2 connection service port

其中:

server1
代表「連接服務程式」名稱

3700
代表連接埠號。在從屬站上指定的埠號必須符合伺服器上所使用的埠號。

tcp
代表您所使用的通訊協定

#
代表說明登錄的註解

如果您計劃要支援使用「網路資訊服務程式 (NIS)」的 UNIX 從屬站, 您就必須更新位在您 NIS 主要伺服器上的服務程式檔案。

services 檔同您可能已在A. 解析伺服器的主電腦位址中編輯的本端 hosts 檔一樣位於同一目錄。

請確定 您沒有指定「快速通信管理程式 (FCM)」或其它處理要使用的埠號。

請參閱表 15,取得您的特殊平台的服務程式檔案的位置。

步驟 C. 將 TCP/IP 節點編入目錄中

您必須將登錄加到從屬站的節點目錄中,來描述遠端節點。 此登錄可用來指定從屬站將要用來存取遠端伺服器的別名 (node_name)、 hostname (或 ip_address), 以及 svcename (或 port_number)。

若要將 TCP/IP 節點編目,請執行下列步驟:

步驟  1.

以有效的 DB2 使用者 ID 登入系統。 詳細資訊,請參閱附錄 C, 命名規則

要訣

如果您要新增資料庫到安裝了 DB2 伺服器或 DB2 Connect 伺服器產品的系統中,請以在案例上具有「系統管理」 (SYSADM) 或「系統控制員」(SYSCTRL) 權限的使用者身份登入此系統。若需其餘 相關資訊,請參閱使用系統管理群組

此一限制由 catalog_noauth 資料庫管理程式架構參數來控制。 若需其餘相關資訊,請參照 Administration Guide

步驟  2.

如果您正在使用 UNIX 從屬站,請執行如下的啟動 script:

   . INSTHOME/sqllib/db2profile    (用於 bash、Bourne 或 Korn shell)
   source INSTHOME/sqllib/db2cshrc (用於 C shell)

其中 INSTHOME 是案例的起始目錄。

步驟  3.

輸入下列指令,將節點編目:

   db2 "catalog tcpip node node_name remote [hostname|ip_address]
     server [svcename|port_number]"
   db2 terminate

例如,若要使用服務程式名稱 server1 來將節點 db2node 上的遠端伺服器 serverhost 編入目錄中,請輸入:

   db2 catalog tcpip node db2node remote serverhost server server1
   db2 terminate

若要將用節點 db2node 上之 IP 位址 9.21.15.235 編目, 並使用埠號 3700,請輸入下列指令:

   db2 catalog tcpip node db2node remote 9.21.15.235 server 3700
   db2 terminate



要訣

如果需要變更以 catalog node 指令設定的值,請執行下列步驟:

步驟  1.

在命令行處理器執行 uncatalog node 指令,如下所示:

   db2 uncatalog node node_name

步驟  2.

以您想要使用的值,重新將節點編目。

步驟 D. 將資料庫編入目錄中

在從屬站應用程式可以存取遠端資料庫之前,必須在伺服器節點上及任何將與它連接的從屬站節點上, 將資料庫編目。依預設值,在您建立資料庫時,它會在伺服器上使用與資料庫名稱 (database_name) 相同的資料庫別名 (database_alias) 自動編目。 在從屬站上,資料庫目錄和節點目錄中的資訊,是用來建立與遠端資料庫之間的連接。

要在從屬站上將資料庫編目,請執行下列步驟:

步驟  1.

以有效的 DB2 使用者 ID 登入系統。 詳細資訊,請參閱附錄 C, 命名規則

要訣

如果您要新增資料庫到安裝了 DB2 伺服器或 DB2 Connect 伺服器產品的系統中,請以在案例上具有「系統管理」 (SYSADM) 或「系統控制員」(SYSCTRL) 權限的使用者身份登入此系統。若需其餘 相關資訊,請參閱使用系統管理群組

此一限制由 catalog_noauth 資料庫管理程式架構參數來控制。 若需其餘相關資訊,請參照 Administration Guide

步驟  2.

在下述工作表中, 填寫您的值直欄。

表 16. 工作表:將資料庫編目的參數值
參數 說明 範例值 您的值
資料庫名稱 (database_name) 遠端資料庫的資料庫別名 (database_alias)。 當您建立資料庫時,它會在伺服器上以與資料庫名稱 (database_name) 相同的資料庫別名 (database_alias) 自動編目,除非您另有指示。 SAMPLE  
資料庫別名 (database_alias) 在從屬站上的遠端資料庫的任意本端暱稱。若您不指定, 則其預設值即是該資料庫的名稱 (database_name)。 資料庫名稱是您自從屬站連接資料庫時所使用的名稱。 tor1  
身分驗證 (auth_value) 您的企業所需要使用的身分驗證的值。 請請參閱 DB2 Connect User's Guide, 取得有關此參數的其餘資訊。 DCS

這表示所提供使用者 ID 及通行碼只有在主電腦或 AS/400 上進行驗證。

 
節點名稱 (node_name) 說明資料庫所在的節點目錄登錄名稱。請使用您在前一個步驟中, 用來將節點編目的「節點名稱」(node_name) 的值。 db2node  

步驟  3.

如果您正在使用 UNIX 從屬站,請執行如下的啟動 script:

   . INSTHOME/sqllib/db2profile    (用於 bash、Bourne 或 Korn shell)
   source INSTHOME/sqllib/db2cshrc (用於 C shell)

其中 INSTHOME 代表案例的起始目錄。

步驟  4.

輸入下列指令將資料庫編目:

   db2 catalog database database_name as database_alias at node node_name
   db2 terminate

例如,欲將名稱為 sample 的遠端資料庫編目, 使它在節點 db2node 上具有別名 tor1,請輸入下列指令:

   db2 catalog database sample as tor1 at node db2node
   db2 terminate



要訣

如果需要變更以 catalog database 指令設定的值,請執行下列步驟:

步驟  a.

執行 uncatalog database 指令,如下所示:

   db2 uncatalog database database_alias

步驟  b.

以您想要使用的值,重新將資料庫編目。

步驟 3. 測試自從屬站到伺服器的連線

在架構從屬站進行通信後,您會需要連接遠端資料庫以測試連接。

步驟  1.

在伺服器上輸入 db2start 指令, 以啟動資料庫管理程式 (若其未在開機時自動啟動)。

步驟  2.

如果您使用的不是 UNIX 從屬站,則請執行啟動 script,如下所示:

   . INSTHOME/sqllib/db2profile    (用於 Bash、Bourne 或 Korn shell)
   source INSTHOME/sqllib/db2cshrc (用於 C shell)

其中 INSTHOME 代表案例的起始目錄。

步驟  3.

請在從屬站上輸入下列指令,將從屬站連接到遠端資料庫:

   db2 connect to database_alias user userid using password

userid 及 password 的值必須在進行其鑑別的系統上是有效的。 根據預設值,身分驗證是在 DB2 伺服器以及在 DB2 Connect 伺服器的主電腦或 AS/400 機器上進行。

如果已順利連接,您將得到一則訊息,顯示您已連接的資料庫的名稱。 您現在能夠從該資料庫中擷取資料。例如,欲擷取在系統型錄表格中所有表格名稱的列示, 則請在「命令中心」或 CLP 中輸入下列 SQL 指令:

     "select tabname from syscat.tables"

當您完成使用資料庫連接時,請輸入 command reset 指令以結束資料庫連接。

捷徑

您可以開始使用 DB2。關於其它進階主題,請參照 Administration Guide安裝與架構補充

自從屬站到伺服器之連線的疑難排解

如果連接失敗,請檢查下列項目:

伺服器上:

  1. db2comm 登記值包括 tcpip 這個值。

    要訣

    輸入 db2set DB2COMM 指令來檢查 db2comm 登記值的設定。 若需其餘相關資訊,請參照 Administration Guide

  2. 服務程式檔已正確更新。
  3. 服務程式名稱 (svcename) 參數已正確地更新在資料庫管理程式架構檔中。
  4. 資料庫已被妥善建立,並編目。
  5. 資料庫管理程式已停止並重新啟動 (在伺服器上輸入 db2stopdb2start 指令)。
  6. 請確定 您沒有指定「快速通信管理程式 (FCM)」或其它處理要使用的埠號。



要訣

如果在啟動通訊協定的連線管理程式時發生問題, 則會出現一則警告訊息,且錯誤訊息會記錄在 db2diag.log 檔案 (位於 INSTHOME/sqllib/db2dump 目錄) 中。

此外,在執行 db2start 指令時發生的任何失敗情形, 都會記載到該案例目錄下之日誌次目錄中的時間戳記檔。 此檔案包含該案例中每一個資料庫分割區伺服器的 db2start 結果。

關於 db2diag.log 檔的詳細資訊, 請參閱 Troubleshooting Guide

從屬站上:

  1. 若已被使用,表示服務程式主電腦檔案已正確更新。
  2. 已使用正確的主電腦名稱 (hostname) 或 IP 位址 (ip_address) 來將節點編目。
  3. 埠號符合或服務程式名稱對映於伺服器上所使用的埠號。
  4. 在資料庫目錄中指定的節點名稱 (node_name) 指向節點目錄中的正確登錄。
  5. 資料庫已正確地編目,編目使用的是 伺服器的資料庫別名 (database_alias 是在 伺服器上建立資料庫時即已編目),與從屬站上的資料庫名稱 ( database_name) 相同。

在您驗證這些項目之後,如果仍無法連接,請參閱 Troubleshooting Guide


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]