適用於 z/OS 平台

在 z/OS 上啟用 DB2 JDBC 類型 2 驅動程式

您可以在 z/OS® 上使用 JDBC 類型 2 驅動程式實作,使 Liberty 伺服器能夠與 DB2® 互動。

開始之前

在您啟用這項支援之前,必須先啟動 Angel 程序。如需相關資訊,請參閱在 z/OS 上管理 Liberty。您可以將 Liberty 伺服器配置成以 z/OS 已啟動作業形式執行。如需相關資訊,請參閱將 Liberty 伺服器配置成 z/OS 已啟動作業

關於這項作業

當您使用 DB2 等之類具備 RRS 功能的資源時,選用的配置如下:
  • 您可以將伺服器啟用成在它停止之時,從「資源和回復服務 (RRS)」的 RM.DATA 日誌串流中,自動刪除資源管理程式名稱。 這個配置是選用的,但啟用的話,它會防止資源管理程式名稱累積在日誌串流中。 如果要能夠自動刪除 RM 名稱,請將「資源存取控制機能 (RACF®)」配置成容許伺服器呼叫 ATRSRV 巨集。 如果要能夠自動刪除 RM 名稱,用來執行 Liberty 伺服器的使用者 ID 必須在 FACILITY 類別中,具備下列其中一項的 ALTER 存取權:
    • MVSADMIN.RRS.COMMANDS.gname.sysname 資源,以便存取特定記載群組名稱 (gname) 和系統 (sysname)
    • MVSADMIN.RRS.COMMANDS.* 資源,以便存取所有系統和記載群組名稱
  • 您可以定義 RM.METADATA 日誌串流來記載可協助進行除錯的資料。用來執行 Liberty 伺服器的使用者 ID 必須依照說明,在 FACILITY 類別中具備 ALTER 存取權。
註: 如需 ATRSRV 巨集、設定適當 RACF 許可權,以及如何定義 RM.METADATA 日誌串流的相關資訊,請參閱與系統的 z/OS 層次相關的 MVS Programming: Resource Recovery 出版品。
  • 當伺服器已停止,或不再需要 zosTransaction-1.0 特性時,您可以利用原生環境定義來主動控制等待交易的時間。 您可以利用 nativeTransactionManager 配置元素及 shutdownTimeout 屬性來執行這個動作。
  • 您可以限制使用者在特定伺服器上,對於任何涉及具備 RRS 功能的資源(例如 DB2 T2)之交易工作的執行權限。 您可以利用 nativeTransactionManager 配置元素及 resourceManagerNamePrefix 屬性來執行這個動作。
    註: resourceManagerNamePrefix 屬性指定只含有 1 到 8 個英數字元(A-Z、a-z、0-9)及公共通用字元(@、#、$)的字首,用來作為登錄於 RRS 的伺服器產生資源管理程式名稱的一部分。 "DEFAULT" 字首是一個保留字首,用來識別預設伺服器配置,且不得用來維護伺服器存取安全。 如果配置的字首不符合名稱、長度及字元需求,就會使用這個 DEFAULT 字首名稱。 這個字首是為了使系統管理者能夠只讓獲授權的使用者執行涉及具備 RRS 功能的資源之交易工作(一般工作及回復)。 例如,在配置了這個字首的伺服器上的 DB2 T2。 系統管理者必須在 SERVER 類別之下,定義一個 BBG.RMNAME.<PREFIX>.RRS 資源,並將 READ 權限提供給必要的使用者。

    下列範例說明選用的配置:

    Server.xml 元素和屬性定義:
    <nativeTransactionManager shutdownTimeout="20s" resourceManagerNamePrefix="PROD1"/>
    RACF 資源定義和使用者授權:
    RDEF SERVER BBG.RMNAME.PROD1.RRS UACC(NONE)
    PERMIT BBG.RMNAME.PROD1.RRS CLASS(SERVER) ACCESS(READ) ID(PROD1USR)
    SETR RACLIST(SERVER) GENERIC(SERVER) REFR

    如需 nativeTransactionManager 元素的相關資訊,請參閱 z/OS 交易管理

程序

  1. 更新 Liberty 伺服器的 server.xml 配置檔。 新增 zosTransaction-1.0 特性子元素到 featureManager 元素中:
    <featureManager>
      <feature>zosTransaction-1.0</feature>
    </featureManager>
    指定這個特性會使應用程式伺服器能夠在「資源回復服務 (RRS)」、應用程式伺服器交易管理程式,以及資源管理程式之間,將交易式活動同步化以及進行適當的管理。因此,不接受任何未配置 zosTransaction-1.0 特性的工作。
  2. 新增資源的 (DB2) 原生程式庫到資源的 <library> 配置元素中: 範例中的 <library> 元素顯示:
    <library id ="DB2T2LibRef">
      	<fileset dir="<YOUR DB2 T2 LIBRARY PATHS>" />
    	  <fileset dir="<YOUR DB2 T2 NATIVE LIBRARY PATHS>" />
    </library>	
  3. 配置 jdbcDriver 和資料來源元素。

    在您定義資料來源元素時,您可以跳過配置 type 屬性,因為依預設,會使用值 javax.sql.ConnectionPoolDataSource。如果您選擇要明確配置 type 屬性,必須使用值 javax.sql.ConnectionPoolDataSource

    資料來源元素可以包含名稱是 properties.db2.jcc 的子元素。properties.db2.jcc 元素中提供的屬性會直接傳遞給 DB2 JCC 驅動程式。driverType 為必要屬性,且必須設為 2databaseName 亦為必要屬性。ssid 屬性雖非必要,但是當 LPAR 上有多個 DB2 子系統時,可用來控制這個資料來源要連接哪個 DB2 for z/OS 子系統。

範例

下列範例說明如何在 server.xml 配置檔中,配置您的應用程式、JDBC 驅動程式、程式庫、檔案集和資料來源元素。
<application type="war" id="db2T2TxWar" name="db2T2TxWar"
             location="/u/user1/wlp/usr/servers/defaultServer/dropins/db2T2Tx.war" />
<jdbcDriver id="DB2T2" libraryRef="DB2T2LibRef"/>

<library id="DB2T2LibRef">
  <fileset dir="/db2v10/jcc/classes" />
  <fileset dir="/db2v10/jcc/lib" />
</library>

<dataSource id="jdbc/DB2T2" jndiName="jdbc/DB2T2" jdbcDriverRef="DB2T2" type="javax.sql.ConnectionPoolDataSource">
  <properties.db2.jcc driverType="2" databaseName="LOC1" />
</dataSource>

指示主題類型的圖示 作業主題

檔名:twlp_using_DB2JDBCtype2drv_zos.html