JDBC-Provider-Eintrag für eine Oracle-Datenbank erstellen

Der DatabaseRoute- und der DatabaseRetrieve-Knoten verwenden für den JDBC-Verbindungsaufbau die in der Registrierungsdatenbank des Brokers gespeicherten Verbindungsdetails. Hierzu gehören die Standard-DBMS-Einstellungen für den JDBC-Provider.

Anhand der folgenden Anweisungen können Sie bei Verwendung einer Oracle-Datenbank einen JDBC-Provider-Eintrag erstellen. Über den im folgenden Script angegebenen Befehl mqsicreateconfigurableservice kann der neue JDBC-Provider-Eintrag 'SIMPLERROUTEDB' erstellt werden. Auf diesen Eintrag wird im Eigenschaftsfeld Name der Datenquelle in den Datenbankknoten aus dem Mustercode verwiesen. In den folgenden Anweisungen wird auch der Eintrag des JDBC-Providers mit einer Benutzer-ID und einem Kennwort für den Broker konfiguriert. Diese Angaben müssen beim Zugriff auf die Datenbank verwendet werden.

  1. Erstellen Sie einen JDBC-Provider-Eintrag für die Datenbank:

    1. Starten Sie den Broker, und stellen Sie sicher, dass auf dem Broker eine Ausführungsgruppe implementiert wurde. Öffnen Sie zum Starten eines Brokers beispielsweise ein Befehlskonsolfenster, in dem Sie WebSphere Message Broker-Befehle ausführen können, und geben Sie folgenden Befehl ein:
      mqsistart MB8BROKER
    2. Öffnen Sie ein neues Dokument in einem Texteditor, kopieren Sie das folgende Script, das den JDBC-Provider-Eintrag SIMPLERROUTEDB erstellt und dadurch dem Mustercode 'Simplified Database Routing' Zugriff auf die JDBC-Datenbank bereitstellt, und fügen Sie es in einen Texteditor ein.

      Sie müssen die folgenden Platzhalter im Script durch die Werte ersetzen, die für Ihre Umgebung gültig sind.

      • <SID> Die Oracle-System-ID zur Identifizierung der Datenbank, welche die Tabellen enthält, die von diesem Mustercode genutzt werden.
      • <JARS URL> Der lokale Verzeichnispfad auf dem System, auf dem der Broker ausgeführt wird, und in dem sich die JAR-Datei befindet, welche die Treiberklasse des Typs 4 enthält.
        • Windows: <ORACLE HOME>\jdbc\lib
        • Linux: <ORACLE HOME>/jdbc/lib/
      • <PORT NUMBER> Die Portnummer, an welcher der Datenbankserver empfangsbereit ist. Der Oracle-Standardwert lautet 1521.
      • <SERVER NAME> Der Name des Hosts, auf dem Oracle ausgeführt wird; Beispiel: localhost.
      mqsideleteconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
      mqsicreateconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
      -n connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,
      serverName,type4DatasourceClassName,type4DriverClassName
      -v "jdbc:oracle:thin:[Benutzer]/[Kennwort]@[Servername]:[Portnummer]:[Verbindungs-URL-FormatAttr1],
      <SID>,Simplified Database Routing Sample Database,<JARS URL>,<PORT NUMBER>,
      <SERVER NAME>,oracle.jdbc.xa.client.OracleXADataSource,oracle.jdbc.OracleDriver" 
      
    3. Speichern Sie die Datei. Bei den folgenden Anweisungen wird davon ausgegangen, dass der Dateiname simplifieddbrouting.bat lautet.
    4. Navigieren Sie in der Befehlskonsole zu dem Ordner, in dem die Datei simplifieddbrouting.bat enthalten ist, und geben Sie den folgenden Befehl ein, um das Script auszuführen:
      simplifieddbrouting.bat

      Wenn Sie das Script ausführen, führt es die folgenden Tasks aus:

      1. Ein eventuell vorhandener JDBC-Provider-Eintrag namens SIMPLERROUTEDB wird gelöscht.
      2. Es wird ein neuer JDBC-Provider-Eintrag namens SIMPLERROUTEDB für den Mustercode 'Simplified Database Routing' erstellt.
    5. Warten Sie das Ende des Scripts ab. Wenn Sie das Script zum ersten Mal ausführen, wird die folgende Nachricht angezeigt:
      BIP8984W: Der konfigurierbare Serviceobjektname 'JDBCProviders : SIMPLERROUTEDB' konnte nicht gefunden werden.
      Der Benutzer hat versucht, einen konfigurierbaren Serviceobjektnamen, der nicht vorhanden ist, zu löschen oder zu ändern.
      Überprüfen Sie die Namen der bestehenden konfigurierbaren Services mithilfe des Befehls 'mqsireportproperties'. 
      Ändern Sie anschließend den Objektnamen der externen Ressource und geben Sie den Befehl erneut aus.
      
      BIP2087E: Broker MB8BROKER konnte die interne Konfigurationsnachricht nicht verarbeiten.
      Die gesamte interne Konfigurationsnachricht konnte nicht erfolgreich verarbeitet werden.
      Ermitteln Sie die Fehlerursachen anhand der Nachrichten, die auf diese Nachricht folgen.
      
      BIP8036E: Negative response received. (Negative Antwort erhalten)
      This command sends an internal configuration message to the broker, the response received indicated that the internal configuration
      message was unsuccessful. (Bei diesem Befehl wird eine interne Konfigurationsnachricht an den Broker gesendet; aus der empfangenen Antwort geht hervor, dass die interne Konfigurationsnachricht nicht erfolgreich war.)
      Check that the WebSphere MQ transport is available. (Prüfen Sie, ob der WebSphere MQ-Transport verfügbar ist.) Check the system log for further information. (Prüfen Sie das Systemprotokoll auf weitere Informationen.)
      
      Ignorieren Sie diese Nachricht. Sie wird angezeigt, da das Script versucht, einen vorhandenen Registereintrag für den JDBC-Provider SIMPLERROUTEDB zu löschen, bevor es den Eintrag erneut erstellt. Falls das Script zum ersten Mal ausgeführt wird, kann der Eintrag nicht im Register gefunden werden.
    6. Mit dem folgenden Befehl können Sie prüfen, ob das Standardbrokerregister korrekt mit dem Mustereintrag für den JDBC-Provider SIMPLERROUTEDB aktualisiert wurde:
      mqsireportproperties MB8BROKER -o SIMPLERROUTEDB -c JDBCProviders -r

      Im Falle einer erfolgreichen Aktualisierung sieht die zurückgemeldete Eigenschaftsausgabe des Befehls wie in folgendem Beispiel aus:

      JDBCProviders
        SIMPLERROUTEDB
          connectionUrlFormat='jdbc:oracle:thin:[Benutzer]/[Kennwort]@[Servername]:[Portnummer]:[Verbindungs-URL-FormatAttr1]'
          connectionUrlFormatAttr1='orc1'
          connectionUrlFormatAttr2=''
          connectionUrlFormatAttr3=''
          connectionUrlFormatAttr4=''
          connectionUrlFormatAttr5=''
          databaseName='default_Database_Name'
          databaseType='default_Database_Type'
          databaseVersion='default_Database_Version'
          description='Simplified Database Routing Sample Database'
          environmentParms='default_none'
          jarsURL='C:\oracle\oraxx\jdbc\lib'
          portNumber='1521'
          securityIdentity='default_User@default_Server'
          serverName='localhost'
          type4DatasourceClassName='oracle.jdbc.xa.client.OracleXADataSource'
          type4DriverClassName='oracle.jdbc.OracleDriver'
      
      BIP8071I: Befehl wurde erfolgreich ausgeführt.
  2. Geben Sie die Werte für Benutzer-ID und Kennwort an, die dem JDBC-Provider SIMPLERROUTEDB zugeordnet werden sollen:

    Geben Sie über die Befehle mqsisetdbparms und mqsichangeproperties Werte für die Benutzer-ID und das Kennwort für den Broker an, die beim JDBC-Provider SIMPLERROUTEDB verwendet werden sollen. Bei dieser Benutzer-ID muss es sich um die Benutzer-ID handeln, die Sie bei der Erstellung der Datenbank verwendet haben.

    1. Geben Sie folgenden Befehl ein, um die Benutzer-ID und das Kennwort mit einer Sicherheitsidentität zu verknüpfen:
      mqsisetdbparms MB8BROKER -n jdbc::mySecurityIdentity -u <Benutzer-ID> -p <Kennwort>
    2. Geben Sie folgenden Befehl ein, um die im vorherigen Schritt definierte Sicherheitsidentität der Eigenschaft securityIdentity des JDBC-Providers SIMPLERROUTEDB zuzuordnen:
      mqsichangeproperties MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n securityIdentity -v mySecurityIdentity
    3. Für bereits implementierte Nachrichtenflüsse werden Änderungen am JDBC-Provider erst verfügbar, nachdem der Broker gestoppt und erneut gestartet wurde. Stoppen und starten Sie den Broker also, wenn Sie den Mustercode bereits implementiert haben.

    Weitere Informationen hierzu finden Sie unter JDBC-Verbindungen mit Datenbanken aktivieren und "Den JDBC-Provider-Service für den DatabaseRoute-Knoten verfügbar machen" in der Dokumentation zu WebSphere Message Broker im Abschnitt DatabaseRoute-Knoten.

Zurück zur Einrichtung von Oracle

Zurück zu 'Datenbank einrichten'

Zurück zum Beginn des Mustercodes