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 DB2 Universal Database 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.
Erstellen Sie einen JDBC-Provider-Eintrag für die Datenbank:
mqsistart MB8BROKER
mqsideleteconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB mqsicreateconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n connectionUrlFormat,databaseName,description,jarsURL,portNumber,serverName, type4DatasourceClassName,type4DriverClassName -v "jdbc:db2://[Servername]:[Portnummer]/[Datenbankname]:user=[Benutzer];password=[Kennwort];, SROUTEDB,Simplified Database Routing Sample Database,<JARS URL>,<PORT NUMBER>, <SERVER NAME>,com.ibm.db2.jcc.DB2DataSource,com.ibm.db2.jcc.DB2Driver"Hinweis: Das oben gezeigte Script besteht aus nur zwei Befehlen, von denen jeder in einer eigenen, separaten Zeile beginnen und enden muss. Beim Kopieren und Einfügen des Scripts darf das gesamte Script deshalb nur zwei Zeilen belegen, so wie hier gezeigt:
mqsideleteconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB
mqsicreateconfigurableservice MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n connectionUrlFormat,databaseName,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v "jdbc:db2://[Servername]:[Portnummer]/[Datenbankname]:user=[Benutzer];password=[Kennwort];,SROUTEDB,Simplified Database Routing Sample Database,<JARS URL>,<PORT NUMBER>,<SERVER NAME>,com.ibm.db2.jcc.DB2DataSource,com.ibm.db2.jcc.DB2Driver"Wird das Script nicht in Form von zwei Zeilen kopiert und eingefügt, führt jeder Versuch, es auszuführen, zu einem Fehler wie " -n wird nicht als gültiges Programm erkannt....". Der Grund dafür ist, dass das System jede neue Zeile fälschlicherweise als Anfang eines neuen Befehls interpretiert.
simplifieddbrouting.bat
Wenn Sie das Script ausführen, führt es die folgenden Tasks aus:
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.
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:db2://[ServerName]:[Portnummer]/[Datenbankname]:user=[Benutzer];password=[Kennwort];' connectionUrlFormatAttr1='' connectionUrlFormatAttr2='' connectionUrlFormatAttr3='' connectionUrlFormatAttr4='' connectionUrlFormatAttr5='' databaseName='SROUTEDB' databaseType='default_Database_Type' databaseVersion='default_Database_Version' description='Simplified Database Routing Sample Database' environmentParms='default_none' jarsURL='C:\Program Files\IBM\SQLLIB\java' portNumber='50000' securityIdentity='default_User@default_Server' serverName='localhost' type4DatasourceClassName='com.ibm.db2.jcc.DB2DataSource' type4DriverClassName='com.ibm.db2.jcc.DB2Driver' BIP8071I: Befehl wurde erfolgreich ausgeführt.
Verwenden Sie die Befehle mqsisetdbparms und mqsichangeproperties zur Angabe der Werte für Benutzer-ID und Kennwort, die dem JDBC-Provider SIMPLERROUTEDB zugeordnet werden sollen. Bei dieser Benutzer-ID muss es sich um die Benutzer-ID handeln, die Sie bei der Erstellung der Datenbank verwendet haben.
mqsisetdbparms MB8BROKER -n jdbc::mySecurityIdentity -u <Benutzer-ID> -p <Kennwort>
mqsichangeproperties MB8BROKER -c JDBCProviders -o SIMPLERROUTEDB -n securityIdentity -v mySecurityIdentity
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 DB2