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

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

Vorbereitungen:

Gehen Sie wie folgt vor, um die Brokerumgebung für die globale Koordination über einen 32-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:
      mqsistop 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 ÄnderungErstellen 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
    • Linux platform Unter Linux on x86:
      • Wenn Sie über DB2 Version 8 oder DB2 Version 9 verfügen und die Koordination mit WebSphere MQ Version 5.3 oder WebSphere MQ Version 6.0 durchführen:
        ln -s <DB2-Installationsverzeichnis>/lib/libdb2.so /var/mqm/exits/libdb2.so
    Ende der Änderung
  3. 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.

    Linux platformUNIX platform Beginn der ÄnderungUnter Linux on x86 und UNIX:Ende der Änderung

    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=Installationsverzeichnis/sample/xatm/db2swit
      XAOpenString=db=Datenquelle,uid=Benutzer-ID,pwd=Kennwort,toc=t
      XACloseString=
      ThreadOfControl=THREAD
    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. Beispielsweiseunter AIX:
      XAResourceManager:
      Name=DB2
      SwitchFile=/opt/mqsi/sample/xatm/db2swit
      XAOpenString=db=MYDB,uid=wbrkuid,pwd=wbrkpw,toc=t
      XACloseString=
      ThreadOfControl=THREAD

    Windows platform Unter Windows:

    1. Öffnen Sie im Menü Start die grafische Oberfläche von WebSphere MQ für Ihre WebSphere MQ-Version:
      • WebSphere MQ Version 6: WebSphere MQ Explorer
      • WebSphere MQ Version 5.3: WebSphere MQ Services
    2. Öffnen Sie das Dialogfenster mit den Eigenschaften des Warteschlangenmanagers und dann XA-Ressourcenmanager.
    3. Geben Sie im Feld SwitchFile den vollständigen Pfad der Switch-Datei ein, so wie in folgendem Beispiel gezeigt, wobei Installationsverzeichnis für das Verzeichnis steht, in dem der Broker installiert ist:
      Installationsverzeichnis\sample\xatm\db2swit.dll
    4. Fügen Sie im Feld XAOpenString folgende Zeichenfolge ein:
      db=Datenquelle,uid=Benutzer-ID,pwd=Kennwort,toc=t
    5. Ersetzen Sie im Feld XAOpenString die 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.
      Beispiel:
      db=MYDB,uid=wbrkuid,pwd=wbrkpw,toc=t
    6. Übernehmen Sie die Standardwerte für alle anderen Felder auf der Seite.
  4. 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 32-Bit-Warteschlangenmanager als Koordinator von Transaktionen konfiguriert.
Nächster Schritt: Sie können jetzt global koordinierte Nachrichtenflüsse auf dem Broker implementieren.
Zugehörige Tasks
Global koordinierte Nachrichtenflüsse konfigurieren
Globale Koordination von Transaktionen konfigurieren (zweiphasiges Commit)
Zugehörige Verweise
Beginn der ÄnderungBefehl mqsistartEnde der Änderung
Beginn der Änderungmqsistop-BefehlEnde der Änderung
Beginn der ÄnderungBefehl mqsicreatebrokerEnde der Änderung
Unterstützte Datenbanken
Zugehörige Informationen
WebSphere MQ Version 6 Information Center online
WebSphere MQ-Bibliothekswebseite
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

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

ac00900_