Mit dem pureQuery-Dienstprogramm ManageRepository können Sie ein Repository erstellen und verwalten, das sich in der Transaktionsdatenbank befindet. Nach der Erstellung des Repositorys laden Sie die pureQuery Runtime-Eigenschaften in das Repository hoch.
Informationen zu diesem Vorgang
Mit dem pureQuery-Dienstprogramm ManageRepository können Sie die folgenden Tasks ausführen:
Die WebSphere-Webanwendung, die für die pureQuery-Clientoptimierung aktiviert ist, verwendet die Informationen in der Laufzeitgruppenversion des Repositorys.
Vorgehensweise
Gehen Sie wie folgt vor, um ein Repository für pureQuery Runtime zu erstellen und zu konfigurieren:
- Erstellen Sie das Repository in der Transaktionsdatenbank.
Führen Sie das Dienstprogramm ManageRepository mit der Option
-create
repository aus. Der folgende Befehl erstellt ein Repository:
java com.ibm.pdq.tools.ManageRepository -create repository
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-repositoryType pureQueryRuntimeOnly
Die Ausgabe des Befehls ähnelt dem folgenden Beispiel:
IBM Optim pureQuery Runtime 2.2.0.3 Build 2.18.118
Lizenziertes Material - Eigentum von IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 Alle Rechte vorbehalten.
=============================================================
Start der Verarbeitung von Optionen: -create "repository"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "****" -repositoryPassword "*****"
-repositoryDriverClass "com.ibm.db2.jcc.DB2Driver"
-repositoryType "pureQueryRuntimeOnly"
Das Dienstprogramm ManageRepository erstellte erfolgreich das Repository.
Die Option
-repositoryType wurde auf
pureQueryRuntimeOnly gesetzt, um ein schlankes Repository nur für
pureQuery Runtime zu erstellen.
Tipp: Mit der Option
-generateScriptOnly des ManageReposoitory-Befehls können Sie ein SQL-Script erstellen, das die SQL-Anweisungen enthält. Hierdurch wird kein Repository erstellt. Sie können das Script so modifizieren, dass Tabellen nicht in die Standardtabellenbereiche, sondern in ihre eigenen Tabellenbereiche gestellt werden. Der Schemaname, Tabellennamen oder Spaltennamen können jedoch nicht modifiziert werden.
Wenn Sie mithilfe eines Scripts ein Repository erstellen, können Sie mit der Option -verify repository sicherstellen, dass die Struktur des Repositorys richtig ist.
- Erstellen Sie im Repository eine Laufzeitgruppenversion.
Erstellen Sie eine Laufzeitgruppe mit der ID testApp und der Versions-ID V1.
Wenn Sie eine Laufzeitgruppe erstellen, müssen Sie auch eine Version angeben.
Der folgende ManageRepository-Befehl erstellt die Laufzeitgruppenversion.
java com.ibm.pdq.tools.ManageRepository -create runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-runtimeGroupId testApp
-runtimeGroupVersion V1
Die Ausgabe des Befehls ähnelt dem folgenden Beispiel:
IBM Optim pureQuery Runtime 2.2.0.3 Build 2.18.118
Lizenziertes Material - Eigentum von IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 Alle Rechte vorbehalten.
=========================================================
Start der Verarbeitung von Optionen: -create "runtimeGroup"
-bind "packages" -runtimeGroupVersion "V1"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "******"
-repositoryDriverClass "com.ibm.db2.jcc.DB2Driver"
-runtimeGroupId "testApp"
Das Dienstprogramm ManageRepository erstellte erfolgreich die Laufzeitgruppe "testApp" Version "V1".
Die Gruppen-ID testApp ist derselbe Wert, den Sie für die pureQuery Runtime-Eigenschaft propertiesGroupId angeben, wenn Sie die angepasste Datenquelleneigenschaft pdqProperties für die WebSphere-Datenquelle erstellen.
- Erstellen Sie eine Datei, die die pureQuery Runtime-Eigenschaften enthält.
Erstellen Sie die Datei
pqtest.properties im aktuellen Verzeichnis des lokalen Dateisystems, wobei Sie den Wert der pureQuery Runtime-Eigenschaft
captureMode auf
ON setzen.
Die Datei enthält die folgenden Textzeilen:
pdq.captureMode=ON
pdq.allowDynamicSQL=TRUE
Wenn Sie pureQuery
Runtime-Eigenschaften in einer Eigenschaftendatei angeben, fügen Sie den Eigenschaftsnamen das Präfix 'pdq.' hinzu.
Wenn der Wert der Eigenschaft captureMode ON ist und die Eigenschaften outputPureQueryXml sowie outputXmlRepository nicht festgelegt sind, speichert pureQuery Runtime die erfassten SQL-Daten im Repository, das durch die pureQuery-Eigenschaft finalRepositoryProperties angegeben ist.
Die Daten im Repository werden in der aktiven Version der Laufzeitgruppe gespeichert, die durch die pureQuery-Eigenschaft propertiesGroupId angegeben wird.
Der Standardwert der pureQuery Runtime-Eigenschaft allowDynamicSQL lautet TRUE und ist in der Eigenschaftendatei nicht erforderlich. Die Angabe der Eigenschaft in die Datei weist lediglich noch einmal auf den Standardwert hin. In pureQuery Runtime
können durch die Anwendung ausgegebene SQL-Anweisungen standardmäßig dynamisch ausgeführt werden, selbst wenn die jeweilige SQL-Anweisung zuvor nicht erfasst wurde.
- Laden Sie pureQuery Runtime-Eigenschaften in das Repository hoch.
Führen Sie den folgenden Befehl aus:
java com.ibm.pdq.tools.ManageRepository -update runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-runtimeGroupId testApp
-pureQueryProperties ./pqtest.properties -runtimeGroupVersion V1
Die Ausgabe des Befehls ähnelt dem folgenden Beispiel:
IBM Optim pureQuery Runtime 2.2.0.3 Build 2.18.118
Lizenziertes Material - Eigentum von IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 Alle Rechte vorbehalten.
======================================================
Start der Verarbeitung von Optionen: -update "runtimeGroup"
-runtimeGroupVersion "v1"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "*****" -repositoryPassword "****"
-repositoryDriverClass "com.ibm.db2.jcc.DB2Driver"
-pureQueryProperties "./pqtest.properties"
-runtimeGroupId "testApp"
Das Dienstprogramm ManageRepository aktualisierte erfolgreich die Laufzeitgruppe "testApp" Version "V1".
- Aktivieren Sie Laufzeitgruppenversion V1 in der Laufzeitgruppe testApp.
Führen Sie den folgenden Befehl aus:
java com.ibm.pdq.tools.ManageRepository -activate runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-runtimeGroupId testApp
-runtimeGroupVersion V1
Die Ausgabe des Befehls ähnelt dem folgenden Beispiel:
IBM Optim pureQuery Runtime 2.2.0.3 Build 2.18.118
Lizenziertes Material - Eigentum von IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 Alle Rechte vorbehalten.
==========================================
Start der Verarbeitung von Optionen: -activate "runtimeGroup"
-runtimeGroupVersion "V1" -repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "*****" -repositoryPassword "*****"
-pureQueryProperties "./pqtest.properties"
-runtimeGroupId "testApp"
Das Dienstprogramm ManageRepository aktivierte erfolgreich die Laufzeitgruppe "testApp" Version "V1".
Ergebnisse
Sie haben ein Repository erstellt und die pureQuery Runtime-Eigenschaften einer Laufzeitgruppenversion im Repository hinzugefügt. Sie haben auch die Laufzeitgruppenversion im Repository aktiviert, damit pureQuery
Runtime die Eigenschaften für die Laufzeitgruppe aus dem Repository abrufen kann.
Wenn Sie die Anwendung ausführen, erfasst pureQuery Runtime die von der Anwendung ausgegebenen SQL-Anweisungen und die zugehörigen Daten. Der Erfassungsprozess erstellt neue Datensätze im Repository, die die Erfassungsinformationen enthalten.
Nächste Schritte
In der nächsten Task konfigurieren Sie WebSphere Application Server für die Verwendung des Repositorys und der pureQuery-Daten im Repository, wenn Sie die Anwendung ausführen. Sie geben die Laufzeitgruppe beim Konfigurieren von pureQuery Runtime zum Abrufen der pureQuery-Informationen aus einem Repository an.
pureQuery Runtime ruft die Informationen aus der aktiven Version der Laufzeitgruppe ab.