Vous utilisez l'utilitaire pureQuery ManageRepository pour créer
et gérer un référentiel qui se trouve dans la base de données de
transactions. Une fois le référentiel créé, vous chargez les propriétés
de l'exécution pureQuery dans le référentiel.
Pourquoi et quand exécuter cette tâche
Vous utilisez l'utilitaire pureQuery ManageRepository pour effectuer
les tâches suivantes :
L'application Web
WebSphere qui est activée avec
l'optimisation client pureQuery utilisera les informations contenues dans la
version du groupe d'exécution du référentiel.
Procédure
Pour créer et configurer un référentiel pour l'exécution de pureQuery :
- Créez le référentiel dans la base de données de transactions.
Lancez l'utilitaire ManageRepository avec l'option
-create repository. La
commande suivante crée un référentiel :
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
Le résultat de la commande est similaire à l'exemple suivant :
IBM Optim pureQuery runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
=============================================================
Démarrage des options de processus : -create "repository"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "****" -repositoryPassword "*****"
-repositoryDriverClass "com.ibm.db2.jcc.DB2Driver"
-repositoryType "pureQueryRuntimeOnly"
L'utilitaire ManageRepository a créé le référentiel avec succès.
L'option
-repositoryType a été définie en tant que
pureQueryRuntimeOnly pour créer un référentiel léger destiné uniquement à
l'utilisation de l'exécution pureQuery.
Conseil : Vous pouvez utiliser l'option
-generateScriptOnly
avec la commande ManageRepository pour générer un script SQL qui contient les
instructions SQL permettant de créer un référentiel mais ne le crée pas. Vous
pouvez modifier le script pour placer les tables dans leurs propres espaces
table au lieu de les placer dans l'espace table par défaut. Cependant, vous ne
pouvez pas modifier le nom du schéma, le nom des tables ou des colonnes.
Si vous créez un référentiel en utilisant un script, vous pouvez utiliser
l'option -verify repository pour vérifier que la structure du
référentiel est correcte.
- Créez la version du groupe d'exécution dans le référentiel.
Créez un groupe d'exécution avec l'ID testApp et l'ID version V1.
Lorsque vous créez un groupe d'exécution, vous devez également spécifier une
version.
La commande ManageRepository suivante crée la version du groupe d'exécution.
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
Le résultat de la commande est similaire à l'exemple suivant :
IBM Optim pureQuery runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
=========================================================
Démarrage des options de processus : -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"
L'utilitaire ManageRepository a correctement créé le groupe d'exécution "testApp"
version "V1".
Le testApp de l'ID de groupe est le même que la valeur que vous spécifierez
pour la propriété d'exécution pureQuery propertiesGroupId en créant
la propriété de source de données personnalisée pdqProperties
sur la source de données WebSphere.
- Créez un fichier contenant les propriétés d'exécution pureQuery.
Créez un fichier
pqtest.properties dans le répertoire en
cours du système de fichiers local avec la valeur de la propriété d'exécution pureQuery
captureMode définie sur
ON.
Le fichier contient les lignes de texte suivantes :
pdq.captureMode=ON
pdq.allowDynamicSQL=TRUE
Lorsque vous spécifiez les propriétés d'exécution pureQuery dans un fichier de
propriétés, vous ajoutez le préfixe pdq. aux noms de propriétés.
Lorsque la valeur de la propriété captureMode est
ON et que les propriétés outputPureQueryXml
et outputXmlRepository ne sont pas définies, l'exécution pureQuery
stocke les données SQL capturées dans le référentiel qui est spécifié par la
propriété pureQuery finalRepositoryProperties.
Dans le référentiel, les données sont enregistrées dans la version active du groupe
d'exécution qui est spécifié par la propriété pureQuery propertiesGroupId.
La valeur par défaut de la propriété d'exécution pureQuery
allowDynamicSQL est TRUE et n'est pas requise
dans le fichier de propriétés. Placer la propriété dans le fichier permet de se
souvenir de la valeur par défaut. Par défaut, l'exécution pureQuery permet aux
instructions SQL lancées par l'application d'être exécutées dynamiquement même si
l'instruction SQL n'a pas été capturée précédemment.
- Chargez les propriétés d'exécution pureQuery dans le répertoire.
Exécutez la commande suivante :
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
Le résultat de la commande est similaire à l'exemple suivant :
IBM Optim pureQuery Runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
======================================================
Démarrage des options de processus : -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"
L'utilitaire ManageRepository a correctement mis à jour le groupe d'exécution "testApp"
version "V1".
- Activez le groupe d'exécution version V1 dans le groupe d'exécution testApp.
Exécutez la commande suivante :
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
Le résultat de la commande est similaire à l'exemple suivant :
IBM Optim pureQuery Runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
==========================================
Démarrage des options de processus : -activate "runtimeGroup"
-runtimeGroupVersion "V1" -repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "*****" -repositoryPassword "*****"
-pureQueryProperties "./pqtest.properties"
-runtimeGroupId "testApp"
L'utilitaire ManageRepository a correctement activé le groupe d'exécution "testApp"
version "V1".
Résultats
Vous avez créé un référentiel et ajouté les propriétés d'exécution
pureQuery à une version de groupe d'exécution dans le référentiel. Vous avez
également activé la version de groupe d'exécution dans le référentiel afin
de permettre à l'exécution pureQuery de récupérer les propriétés pour le groupe
d'exécution à partir du référentiel.
Lorsque vous exécutez l'application,
l'exécution pureQuery capture les instructions SQL lancées par l'application ainsi
que les données associées aux instructions SQL. Le processus de capture crée
de nouveaux enregistrements dans le référentiel, qui contiennent les
informations de capture.
Que faire ensuite
Dans la nouvelle tâche, vous configurez
WebSphere Application Server pour qu'il
utilise le référentiel et les données pureQuery du référentiel lorsque vous
exécutez l'application. Lorsque vous configurez l'exécution pureQuery afin de
récupérer des informations pureQuery à partir d'un référentiel, vous
spécifiez le groupe d'exécution.
L'exécution pureQuery récupère les
informations à partir de la version active du groupe d'exécution.