Globale Koordination mit DB2 über einen 64-Bit-Warteschlangenmanager konfigurieren

Wenn Nachrichtenflusstransaktionen mit Aktualisierungen in DB2-Datenbanken unter der Steuerung eines 64-Bit-Warteschlangenmanagers global koordiniert werden sollen, müssen Sie die Brokerumgebung konfigurieren.

Vorbereitungen:

Alle Warteschlangen von WebSphere MQ Version 6 auf 64-Bit-Plattformen werden im 64-Bit-Modus ausgeführt. 64-Bit-Warteschlangenmanager können Transaktionen nur im 64-Bit-Modus koordinieren. Wenn der Broker einen 64-Bit-Warteschlangenmanager verwendet, können Sie Nachrichtenflüsse global koordinieren, die entweder in 64-Bit- oder in 32-Bit-Ausführungsgruppen implementiert werden; wenn Sie jedoch 32-Bit-Ausführungsgruppen verwenden, müssen Sie sowohl in der Datei 'odbc.ini' als auch in der Datei 'odbc64.ini' den Datenquellennamen der Benutzerdatenbank definieren. Wenn der Broker einen 64-Bit-Warteschlangenmanager verwendet oder eine 64-Bit-Ausführungsgruppe aufweist, müssen die Datenbanken, zu denen der Broker eine Verbindung herstellt, ebenfalls im 64-Bit-Modus ausgeführt werden.

Gehen Sie wie folgt vor, um die Brokerumgebung für die globale Koordination über einen 64-Bit-Warteschlangenmanager als Transaktionsmanager zu konfigurieren:

  1. Legen Sie fest, ob der Broker Verbindungen zu Datenbanken über TCP/IP oder gemeinsam genutzten Speicher herstellen soll.

    Weitere Informationen zu TCP/IP-Verbindungen finden Sie im Abschnitt über die Nachricht SQL1224N unter Probleme beim Verwenden von Datenbanken beheben.

    So aktivieren Sie gemeinsam genutzten Speicher:

    1. Stoppen Sie den Broker mit folgendem Befehl, wobei Broker für den Namen des Brokers steht:
      mqsistart Broker
    2. Führen Sie folgenden Befehl aus, um sicherzustellen, dass der Broker in einer Umgebung mit exportierter Erweiterungsspeichervariable ausgeführt wird:
      export EXTSHM=ON
    3. Starten Sie den Broker mit folgendem Befehl erneut, wobei Broker für den Namen des Brokers steht:
      mqsistart Broker
    4. Stellen Sie sicher, dass auf dem DB2-Server die Unterstützung für gemeinsam genutzten Speicher aktiviert ist. Der Abschnitt Datenbanken für die globale Koordination von Transaktionen konfigurieren enthält weitere Informationen hierzu.
  2. Beginn der Änderung2. Erstellen Sie die symbolischen Links, die für Ihre Zusammenstellung aus Plattform, Warteschlangenmanager und DB2-Version erforderlich sind. Sie müssen mit Root-Berechtigung angemeldet sein.
    • AIX platform Unter AIX:
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.a /var/mqm/exits/libdb2.a
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.a /var/mqm/exits/libdb2.a
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.a /var/mqm/exits64/libdb2.a
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.a /var/mqm/exits/libdb2.a
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.a /var/mqm/exits/libdb2.a
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.a /var/mqm/exits64/libdb2.a
    • HP-UX platform Unter HP-UX:
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.sl /var/mqm/exits/libdb2.sl
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.sl /var/mqm/exits/libdb2.sl
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.sl /var/mqm/exits64/libdb2.sl
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.sl /var/mqm/exits/libdb2.sl
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.sl /var/mqm/exits/libdb2.sl
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.sl /var/mqm/exits64/libdb2.sl
    • Solaris platform Unter Solaris:
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.so /var/mqm/exits/libdb2.so
      • Wenn Sie über DB2 Version 8 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.so /var/mqm/exits/libdb2.so
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.so /var/mqm/exits64/libdb2.so
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 5.3 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.so /var/mqm/exits/libdb2.so
      • Wenn Sie über DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib32/libdb2.so /var/mqm/exits/libdb2.so
        ln -s <DB2-Installationsverzeichnis>/lib64/libdb2.so /var/mqm/exits64/libdb2.so
    Ende der Änderung
  3. Folgen Sie den Anweisungen für die von Ihnen verwendeten Ausführungsgruppen:

32-Bit-Ausführungsgruppen

Gehen Sie wie folgt vor, um den Warteschlangenmanager des Brokers für die Koordination von Nachrichtenflüssen, die in einer 32-Bit-Ausführungsgruppe implementiert sind, zu konfigurieren:
  1. UNIX platform Nur unter UNIX: Erstellen Sie folgende symbolische Links, um die Position der ODBC-Datenbanktreiber und der Switch-Datei, die mit WebSphere Message Broker geliefert werden, anzugeben:
    ln –s Installationsverzeichnis/sample/xatm/db2swit /var/mqm/exits/db2swit
    ln –s Installationsverzeichnis/sample/xatm/db2swit64 /var/mqm/exits64/db2swit
    Dabei gilt:
    • Installationsverzeichnis steht für das Verzeichnis, in dem WebSphere Message Broker installiert ist.
  2. Konfigurieren Sie den Broker-Warteschlangenmanager mit XA-Ressourcenmanager-Informationen für jede Datenbank, die in die Transaktion involviert ist, die der Warteschlangenmanager global koordinieren wird. Wenn die Nachrichtenflüsse auf Nachrichtenwörterbücher verweisen oder Publication-Knoten enthalten, müssen Sie mit derselben Methode XA-Ressourcenmanager-Informationen für die Brokerdatenbank und die Benutzerdatenbanken definieren.

    UNIX platform Unter UNIX:

    1. Öffnen Sie die Datei qm.ini des Warteschlangenmanagers in einem Texteditor. Die Datei qm.ini befindet sich im Pfad /var/mqm/qmgrs/WS-Manager-Name/qm.ini, wobei WS_Manager_Name für den Namen des Brokers steht, der dem Warteschlangenmanager zugeordnet ist.
    2. Fügen Sie am Ende der Datei qm.ini folgende Zeilengruppe hinzu:
      XAResourceManager:
      Name=DB2
      SwitchFile=db2swit
      XAOpenString=db=Datenquelle,uid=Benutzer-ID,pwd=Kennwort,toc=t
      XACloseString=
      ThreadOfControl=THREAD

      Die Switch-Datei wird von WebSphere Message Broker bereitgestellt.

    3. Ersetzen Sie in der Zeile XAOpenString die folgenden Werte durch Werte, die Ihrer Konfiguration entsprechen:
      • Datenquelle steht für den Namen der Datenquelle, zu der eine Verbindung hergestellt werden soll.
      • Benutzer-ID muss der Benutzername sein, mit dem der Broker eine Verbindung zur Datenbank herstellt. Der vom Broker verwendete Benutzername kann auf verschiedene Weise definiert werden. Wenn Sie beim Erstellen des Brokers im Befehl mqsicreatebroker den Parameter -u verwenden, wird dieser Benutzername zum Herstellen einer Verbindung zur Datenbank verwendet, es sei denn, dass mit dem Befehl mqsisetdbparms ein bestimmter Benutzername und das zugehörige Kennwort einem bestimmten Datenquellennamen (Data Source Name, DSN) zugeordnet wurde. Wenn Sie weder den Befehl mqsicreatebroker mit dem Parameter -u noch den Befehl mqsisetdbparms verwenden, wird der Benutzername des Brokerservices verwendet, den Sie im Befehl mqsicreatebroker mit dem Parameter -i definieren.
      • Kennwort steht für das Kennwort, das dem Benutzernamen zugeordnet ist.
    4. Übernehmen Sie die Standardwerte für alle anderen Zeilen in der Zeilengruppe. Beispiel:
      XAResourceManager:
      Name=DB2
      SwitchFile=db2swit
      XAOpenString=db=MYDB,uid=wbrkuid,pwd=wbrkpw,toc=t
      XACloseString=
      ThreadOfControl=THREAD
  3. Stoppen Sie den Warteschlangenmanager, und starten Sie ihn erneut, um die Änderungen anzuwenden, da 'qm.ini' schreibgeschützt ist, solange der Warteschlangenmanager aktiv ist.
    Um den Warteschlangenmanager zu stoppen und danach neu zu starten, geben Sie die folgenden Befehle ein, wobei Warteschlangenmanagername für den Namen des Warteschlangenmanagers steht:
    endmqm Warteschlangenmanagername
    strmqm Warteschlangenmanagername

    Wenn der Warteschlangenmanager erneut startet, überprüfen Sie dessen Protokoll auf Warnungen, die mit dem Neustart in Zusammenhang stehen. Die Protokolldateien befinden sich im Verzeichnis '/var/mqm/qmgrs/Warteschlangenmanagername/errors', wobei Warteschlangenmanagername für den Namen des Warteschlangenmanagers steht, den Sie erneut gestartet haben.

    Wenn der Warteschlangenmanager erfolgreich neu gestartet wurde, werden die Änderungen angewandt, die Sie an 'qm.ini' durchgeführt haben.
Damit ist DB2 für die globale Koordination mit einem 64-Bit-Warteschlangenmanager als Koordinator von Transaktionen konfiguriert.
Nächster Schritt: Sie können jetzt global koordinierte Nachrichtenflüsse auf dem Broker implementieren.

64-Bit-Ausführungsgruppen

Gehen Sie wie folgt vor, um den Warteschlangenmanager des Brokers für die Koordination von Nachrichtenflüssen, die in einer 64-Bit-Ausführungsgruppe implementiert sind, zu konfigurieren:
  1. UNIX platform Nur unter UNIX: Erstellen Sie folgende symbolische Links, um die Position der ODBC-Datenbanktreiber und der Switch-Datei, die mit WebSphere Message Broker geliefert werden, anzugeben:
    ln –s Installationsverzeichnis/sample/xatm/db2swit64 /var/mqm/exits64/db2swit
    ln -s Installationsverzeichnis/sample/xatm/db2swit /var/mqm/exits/db2swit

    Dabei steht Installationsverzeichnis für das Verzeichnis, in dem WebSphere Message Broker installiert ist.

  2. Konfigurieren Sie den Broker-Warteschlangenmanager mit XA-Ressourcenmanager-Informationen für jede Datenbank, die in die Transaktion involviert ist, die der Warteschlangenmanager global koordinieren wird. Wenn die Nachrichtenflüsse auf Nachrichtenwörterbücher verweisen oder Publication-Knoten enthalten, müssen Sie mit derselben Methode XA-Ressourcenmanager-Informationen für die Brokerdatenbank und die Benutzerdatenbanken definieren.

    UNIX platform Unter UNIX:

    1. Öffnen Sie die Datei qm.ini des Warteschlangenmanagers in einem Texteditor. Die Datei qm.ini befindet sich im Pfad /var/mqm/qmgrs/WS-Manager-Name/qm.ini, wobei WS_Manager_Name für den Namen des Brokers steht, der dem Warteschlangenmanager zugeordnet ist.
    2. Fügen Sie am Ende der Datei qm.ini folgende Zeilengruppe hinzu:
      XAResourceManager:
      Name=DB2
      SwitchFile=db2swit
      XAOpenString=db=Datenquelle,uid=Benutzer-ID,pwd=Kennwort,toc=t
      XACloseString=
      ThreadOfControl=THREAD

      Die Switch-Datei wird von WebSphere Message Broker bereitgestellt.

    3. Ersetzen Sie in der Zeile XAOpenString die folgenden Werte durch Werte, die Ihrer Konfiguration entsprechen:
      • Datenquelle steht für den Namen der Datenquelle, zu der eine Verbindung hergestellt werden soll.
      • Benutzer-ID muss der Benutzername sein, mit dem der Broker eine Verbindung zur Datenbank herstellt. Der vom Broker verwendete Benutzername kann auf verschiedene Weise definiert werden. Wenn Sie beim Erstellen des Brokers im Befehl mqsicreatebroker den Parameter -u verwenden, wird dieser Benutzername zum Herstellen einer Verbindung zur Datenbank verwendet, es sei denn, dass mit dem Befehl mqsisetdbparms ein bestimmter Benutzername und das zugehörige Kennwort einem bestimmten Datenquellennamen (Data Source Name, DSN) zugeordnet wurde. Wenn Sie weder den Befehl mqsicreatebroker mit dem Parameter -u noch den Befehl mqsisetdbparms verwenden, wird der Benutzername des Brokerservices verwendet, den Sie im Befehl mqsicreatebroker mit dem Parameter -i definieren.
      • Kennwort steht für das Kennwort, das dem Benutzernamen zugeordnet ist.
    4. Übernehmen Sie die Standardwerte für alle anderen Zeilen in der Zeilengruppe. Beispiel:
      XAResourceManager:
      Name=DB2
      SwitchFile=db2swit
      XAOpenString=db=MYDB,uid=wbrkuid,pwd=wbrkpw,toc=t
      XACloseString=
      ThreadOfControl=THREAD
  3. Stoppen Sie den Warteschlangenmanager, und starten Sie ihn erneut, um die Änderungen anzuwenden, da 'qm.ini' schreibgeschützt ist, solange der Warteschlangenmanager aktiv ist.
    Um den Warteschlangenmanager zu stoppen und danach neu zu starten, geben Sie die folgenden Befehle ein, wobei Warteschlangenmanagername für den Namen des Warteschlangenmanagers steht:
    endmqm Warteschlangenmanagername
    strmqm Warteschlangenmanagername

    Wenn der Warteschlangenmanager erneut startet, überprüfen Sie dessen Protokoll auf Warnungen, die mit dem Neustart in Zusammenhang stehen. Die Protokolldateien befinden sich im Verzeichnis '/var/mqm/qmgrs/Warteschlangenmanagername/errors', wobei Warteschlangenmanagername für den Namen des Warteschlangenmanagers steht, den Sie erneut gestartet haben.

    Wenn der Warteschlangenmanager erfolgreich neu gestartet wurde, werden die Änderungen angewandt, die Sie an 'qm.ini' durchgeführt haben.
Damit ist DB2 für die globale Koordination mit einem 64-Bit-Warteschlangenmanager als Koordinator von Transaktionen konfiguriert.
Nächster Schritt: Sie können jetzt global koordinierte Nachrichtenflüsse auf dem Broker implementieren.
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:28:05

ac00905_