Für z/OS-Plattformen

DB2-JDBC-Type-2-Treiber unter z/OS aktivieren

Der Liberty-Server kann mit DB2 interagieren, wenn die Implementierung des JDBC-Type-2-Treibers unter z/OS verwendet wird.

Vorbereitende Schritte

Der Angel-Prozess muss gestartet werden, bevor diese Unterstützung aktiviert wird. Weitere Informationen finden Sie unter Liberty unter z/OS verwalten.Sie können einen Liberty-Server so konfigurieren, dass er als gestartete z/OS-Task ausgeführt wird. Weitere Informationen finden Sie unter Configuring a Liberty server as a z/OS started task.

Informationen zu diesem Vorgang

Bei der Verwendung einer RRS-fähigen Ressource, wie DB2, haben Sie die folgenden optionalen Konfigurationen:
  • Sie können den Server so konfigurieren, dass Ressourcenmanagernamen beim Stoppen des Servers automatisch aus dem RRS-Protokolldatenstrom (Resource and Recovery Services) RM.DATA gelöscht werden. Diese Konfiguration ist optional, aber wenn sie eingerichtet ist, verhindert sie, dass sich Ressourcenmanagernamen (RM) im Protokolldatenstrom ansammeln. Zum Aktivieren des automatischen Löschens von RM-Namen konfigurieren Sie Resource Access Control Facility (RACF) so, dass der Server das Makro ATRSRV aufrufen kann. Die Benutzer-ID, unter der der Liberty-Server ausgeführt wird, muss zum Aktivieren des automatischen Löschens von RM-Namen ALTER-Zugriff in der FACILITY-Klasse auf eine der folgenden Ressourcen haben:
    • Ressource MVSADMIN.RRS.COMMANDS.gname.sysname, um auf einen bestimmten Protokollgruppennamen (gname) und Systemnamen (sysname) zuzugreifen
    • Ressource MVSADMIN.RRS.COMMANDS.*, um den Zugriff auf alle System- und Protokollgruppennamen zuzulassen
  • Sie können den RM.METADATA-Protokolldatenstrom für die Protokollierung von Daten verwenden, die Debugging unterstützen. Die Benutzer-ID, unter der der Liberty-Server ausgeführt wird, muss wie beschrieben ALTER-Zugriff in der FACILITY-Klasse haben.
Anmerkung: Weitere Informationen zum Makro ATRSRV, zum Festlegen der entsprechenden RACF-Berechtigung und zum Definieren des Protokolldatenstroms RM.METADATA finden Sie in der Veröffentlichung "MVS Programming: Resource Recovery" für die z/OS-Version Ihres Systems.
  • Sie können steuern, wie lange auf den Abschluss von Transaktionen, die native Kontexte aktiv verwenden, gewartet werden soll, wenn der Server gestoppt wird oder wenn das Feature zosTransaction-1.0 nicht mehr benötigt wird. Hierfür können Sie das Konfigurationselement nativeTransactionManager und das Attribut shutdownTimeout verwenden.
  • Sie können die Benutzerberechtigung für die Ausführung transaktionsorientierter Arbeitsvorgänge mit Beteiligung RRS-fähiger Ressourcen, wie z. B. DB2 T2, auf einem bestimmten Server beschränken. Hierfür können Sie das Konfigurationselement nativeTransactionManager und das Attribut resourceManagerNamePrefix verwenden.
    Anmerkung: Das Attribut resourceManagerNamePrefix gibt ein aus 1 bis 8 alphanumerischen (A-Z,a-z,0-9) und ausschließlich nationalen (@,#,$) Zeichen bestehendes Präfix an, das als Teil des vom Server generierten Ressourcenmanagernamens, der bei RRS registriert wird, verwendet werden soll. Das Präfix "DEFAULT" ist ein reserviertes Präfix, das die Standardserverkonfiguration bezeichnet und für die Sicherung des Serverzugriffs nicht verwendet werden darf. Wenn das konfigurierte Präfix nicht den Namens-, Längen- und Zeichenanforderungen entspricht, wird der Präfixname DEFAULT verwendet. Das Präfix ist für Systemadministratoren bestimmt, um ausschließlich berechtigten Benutzern die Ausführung transaktionsorientierter Arbeitsvorgänge (normal und Wiederherstellung), an denen RRS-fähige Ressourcen beteiligt sind, zu ermöglichen. Ein Beispiel ist DB2 T2 in dem Server, in dem das Präfix konfiguriert wurde. Systemadministratoren müssen eine Ressource BBG.RMNAME.<PRÄFIX>.RRS in der Klasse SERVER definieren und den erforderlichen Benutzern Leseberechtigung (READ) erteilen.

    Die folgenden Beispiele veranschaulichen die optionale Konfiguration:

    Element- und Attributdefinition in der Datei Server.xml
    <nativeTransactionManager shutdownTimeout="20s" resourceManagerNamePrefix="PROD1"/>
    Ressourcendefinition und Benutzerberechtigung mit 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

    Weitere Informationen zum Element nativeTransactionManager finden Sie unter z/OS Transaction Management.

Vorgehensweise

  1. Aktualisieren Sie die Konfigurationsdatei server.xml des Liberty-Servers. Fügen Sie dem Element "featureManager" das Feature zosTransaction-1.0 als Unterelement hinzu:
    <featureManager>
      <feature>zosTransaction-1.0</feature>
    </featureManager>
    Die Angabe dieses Features ermöglicht dem Anwendungsserver, transaktionsorientierte Aktivitäten zwischen Resource Recovery Services (RRS), dem Transaktionsmanager des Anwendungsservers und dem Ressourcenmanager zu synchronisieren und entsprechend zu verwalten. Es ist nicht zulässig, ohne Konfiguration des Features zosTransaction-1.0 zu arbeiten.
  2. Fügen Sie dem Konfigurationselement <library> der Ressource die nativen (DB2-)Bibliotheken der Ressource hinzu: Das Element <library> im Beispiel sieht wie folgt aus:
    <library id ="DB2T2LibRef">
      	<fileset dir="<Ihre DB2 T2-Bibliothekspfade>" />
    	  <fileset dir="<Ihre nativen DB2 T2-Bibliothekspfade>" />
    </library>	
  3. Konfigurieren Sie die Elemente "jdbcDriver" und "datasource".

    Wenn Sie das Element "datasource" definieren, können Sie die Konfiguration des Attributs Typattributs ("type") überspringen, weil standardmäßig der Wert javax.sql.ConnectionPoolDataSource verwendet wird. Wenn Sie das Typattribut explizit konfigurieren möchten, müssen Sie folgenden Wert verwenden: javax.sql.ConnectionPoolDataSource.

    Das Element "datasource" kann ein untergeordnetes Element mit dem Namen properties.db2.jcc enthalten. Im Element properties.db2.jcc angegebene Attribute werden direkt an den DB2-JCC-Treiber übergeben. Das Attribut driverType ist erforderlich und muss auf 2 gesetzt werden. Das Attribut databaseName ist ebenfalls erforderlich. Das Attribut ssid ist nicht erforderlich. Mit diesem Attribut kann jedoch gesteuert werden, zu welchem DB2 for z/OS-Subsystem diese Datenquelle eine Verbindung herstellt, wenn mehrere DB2-Subsysteme in der LPAR vorhanden sind.

Beispiel

Dieses Beispiel beschreibt, wie Sie Ihre Anwendungs-, JDBC-Treiber-, Bibliotheks-, Dateigruppen- und Datenquellenelemente in der Datei server.xml des Servers konfigurieren.
<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>

Symbol das den Typ des Artikels anzeigt. Taskartikel

Dateiname: twlp_using_DB2JDBCtype2drv_zos.html