IBM DB2 Universal Database Version 8.2, FixPack 4 (équivalente de la version 8.1, FixPack 11) et FixPacks à venir Avant de consulter les informations suivantes et avant d'utiliser le produit associé, veuillez lire les informations générales contenues dans la section Remarques. LE PRESENT DOCUMENT EST LIVRE "EN L'ETAT". IBM DECLINE TOUTE RESPONSABILITE, EXPRESSE OU IMPLICITE, RELATIVE AUX INFORMATIONS QUI Y SONT CONTENUES, Y COMPRIS EN CE QUI CONCERNE LES GARANTIES DE QUALITE MARCHANDE OU D'ADAPTATION A VOS BESOINS. Certaines juridictions n'autorisent pas l'exclusion des garanties implicites, auquel cas l'exclusion ci-dessus ne vous sera pas applicable. Ce document est mis à jour périodiquement. Chaque nouvelle édition inclut les mises à jour. Les informations qui y sont fournies sont susceptibles d'être modifiées avant que les produits décrits ne deviennent eux-mêmes disponibles. En outre, il peut contenir des informations ou des références concernant certains produits, logiciels ou services non annoncés dans ce pays. Cela ne signifie cependant pas qu'ils y seront annoncés. Pour plus de détails, pour toute demande d'ordre technique, ou pour obtenir des exemplaires de documents IBM, référez-vous aux documents d'annonce disponibles dans votre pays, ou adressez-vous à votre partenaire commercial. Vous pouvez également consulter les serveurs Internet suivants : * http://www.fr.ibm.com (serveur IBM en France) * http://www.can.ibm.com (serveur IBM au Canada) * http://www.ibm.com (serveur IBM aux Etats-Unis) Compagnie IBM France Direction Qualité Tour Descartes 92066 Paris-La Défense Cedex 50 (C) Copyright IBM France 2005. Tous droits réservés. Copyright International Business Machines Corporation 2002, 2005. All Rights Reserved. Table des matières A propos des Notes sur l'édition A propos de cette version Nouveautés de la présente édition Historique des correctifs du produit Compatibilité Compatibilité Compatibilité des produits Informations sur l'installation, la migration, la mise à niveau et la configuration Configurations matérielle et logicielle requises Remarques relatives à l'installation Nouvelles options pour l'assistant de configuration DB2 (Windows) Modifications apportées à l'assistant de configuration DB2 (Windows) Restrictions de l'installation de la sécurité étendue (Windows) Le chemin d'accès au répertoire ne doit comporter aucun espace (Linux et UNIX) Condition requise par Red Hat Enterprise Linux 4 Niveaux JDK pour DB2 UDB (Linux on IA64 et Linux on POWER) Décompression des images d'installation (Linux et UNIX) DB2 UDB n'admet pas de chemin d'installation autre qu'anglais (Windows) Téléchargement et décompression de FixPacks pour différents produits (Windows) Installation de DB2 UDB à partir des images d'installation (Linux et UNIX) Installation de DB2 UDB à partir des images d'installation (Windows) Espace disque requis pour une installation de DB2 UDB à l'aide d'un fichier réponses Restrictions sur l'ajout de produits via la commande db2setup (Linux et UNIX) Utilitaires Web de DB2 Définition des accès aux modules Query Patroller après l'application des FixPacks Installation de Query Patroller au niveau de FixPack 3 ou suivant Installation du serveur Query Patroller Définition d'un nouveau groupe de partitions de base de données dans Query Patroller Installation des outils du client Query Patroller Re-création des versions bêta des bases de données Installation de fichiers MDAC pour les versions en langue nationale de DB2 UDB Politique de licence DB2 pour DB2 Universal Database Workgroup Server Edition Installation de polices asiatiques supplémentaires (Linux) Configuration du Centre de développement pour utiliser les kits Java Development Kits (Linux) Création d'ID de groupe et d'utilisateur sur des distributions United Linux 1.0 et SuSE Linux Le démon du système d'aide ne démarre pas après une installation à l'aide de la commande db2_install (UNIX et Linux) Compatibilité "Ready for Tivoli" (UNIX) Outil de réduction de l'image d'installation - db2iprune (Windows) Restriction relative à l'installation de la documentation de la version 8 de DB2 Universal Database (Windows) mise à niveau des installations précédentes (Windows) Configuration système requise pour DB2 .NET Data Provider (Windows) Installation des clients DB2 version 8 et DB2 Connect PE avec des droits autres que ceux de l'administrateur (Windows) Remarques relatives à la migration db2updv8 - Note technique après avoir exécuté db2updv8, vous ne pouvez pas revenir à la version 8.1 Migration des tables EXPLAIN Migration de l'Extension XML depuis des versions précédentes Migration de DB2 Universal Database lors de l'utilisation de DataJoiner ou de la réplication Migration de DB2 Universal Database (Windows) Migration d'une base de données DB2 version 8 Windows 32-bits vers Windows 64 bits Migration de la version 7 vers la version 8.2.2 de DB2 UDB Version 8.2.2 dans un environnement MSCS Migration de la base de données (HP-UX sur IA64) Informations sur la désinstallation Désinstallation silencieuse de DB2 UDB (Windows) Code produit pour la suppression du Centre de documentation DB2 à l'aide d'une procédure silencieuse de désinstallation (Windows) Limites, incidents et palliatifs connus Limitations db2look - Limitation de l'espace table de stockage automatique La fonction de table SNAP_GET_DB renvoie des résultats incomplets IMPORT REPLACE ne respecte pas la clause Not Logged Initially Réorganisation des données de champ étendu et de grand objet impossible par une réorganisation de table interne Un comportement de verrouillage dans les curseurs bloc peut paraître incohérent dans des applications client Exportation de données avec ODBC vers le programme d'entrepôt de données du fichier Types de données non pris en charge dans le débogueur SQL intégré du Centre de développement Types structurés du Centre de développement Limitations du Centre de développement pour les systèmes d'exploitation 64 bits Centre de développement (Linux) Débogage de procédures mémorisées avec guillemets Chemins d'accès requis pour la compilation de routines Java dans le Centre de développement Limitations du Centre de développement concernant l'exécution et le débogage simultanés de procédures mémorisées Java Méthode DB2SystemMonitor.getServerTimeMicros non prise en charge Le moteur d'exécution du compilateur IBM XL C/C++ doit être installé (systèmes Linux sur iSeries et pSeries, 64 bits) Universal JDBC Driver Type 2 non pris en charge par la version 8.2.2 de DB2 UDB (Linux AMD64) Curseurs dans les applications PHP Limites du mot clé de la configuration ConnectNode CLI/ODBC Restriction (CLI) de la fonction SQLColumns Limitations des options de définition des accès pour les modules CLI Restrictions de l'utilitaire CLI LOAD Création de la base de données du catalogue des outils non prise en charge (Linux pour AMD64) Création de la base de données du catalogue d'outils non prise en charge (AIX, Solaris et HP-UX) Limites de mémoire pour DB2 UDB Express et DB2 Workgroup Server Edition V8.2 Planification de l'exécution d'un processus d'entrepôt à intervalles réguliers Limites du support SNA dans la version 8 Incident relatif au plug-in de sécurité et restriction concernant les clients DB2 UDB (Windows) Erreurs au cours du signalement d'une identification correcte lors d'une tentative de connexion (AIX) ID utilisateur en deux parties non pris en charge (Windows ME) La page de chargement et d'importation de colonnes ne prend pas en charge les caractères à double octets dans les fichiers IXF Outils d'interface graphique pour les systèmes d'exploitation Linux sur AMD64 Paramêtres d'affichage de base pour les outils d'interface graphique Affichage incorrect des caractères GB18030 dans la barre de titre d'une fenêtre Ne partitionnez pas les tables du centre de catalogues d'informations Limitations de Query Patroller lorsque DYN_QUERY_MGMT est désactivé Les tables de résultats Query Patroller utilisent désormais le schéma DB2QPRT Restrictions de l'indicateur de santé Problèmes et solutions connus Exportation vers un fichier IXF avec des index sur des colonnes contenant des caractères - et + Erreur CLI0116E ou SQL0428N à l'appel de l'API db2ReadLog La commande "db2gcf -k" échoue sur DB2 UDB Workgroup Server Edition Erreur SQL1224 d'un encapsuleur DRDA (AIX) Les touches d'accès rapide ne fonctionnent pas dans Microsoft Visual Studio .NET Framework 1.1 Environnement local en chinois simplifié (AIX) Environnement local en chinois simplifié (Red Hat Linux) Incompatibilité de Merant Driver Manager (UNIX) NFS APAR IY32512 - Unités d'exécution non disponibles (AIX) Erreur d'option de précompilation SQLFLAG(STD) Les pools de connexions doivent être activés lors de l'utilisation de Sysplex dans DB2 Connect Assistant personnalisé de DB2 Connect La création de la base de données du catalogue des outils échoue (HP-UX) Affichage des caractères Indic dans les outils d'interface graphique de DB2 Outils d'interface graphique non pris en charge pour les serveurs zSeries (Linux) Placer les termes recherchés dans le Centre de documentation DB2 entre guillemets s'ils contiennent des nombres Fichier journal du Centre de gestion des catalogues d'informations non généré lors de l'importation des fichiers de langage de marques Définition des accès aux modules Query Patroller Indisponibilité des ports avec Query Patroller (Windows) Environnements sécurisés (Windows) Exemples de programmes d'Extension XML renommés Décomposition de documents dans l'Extension XML contenant des attributs et des noms d'élément non uniques Différences entre SNA et TCP/IP lors de l'utilisation de DB2 Connect mises à jour de la documentation Administration: Implementation Configuration de la redirection automatique du client (DB2_MAX_CLIENT_CONNRETRIES et DB2_CONNRETRIES_INTERVAL) Précisions sur la variable de registre DB2TIMEOUT Répertoires créés au cours de la création de conteneur d'espace table Stockage automatique Définition d'une colonne générée sur une table existante Agrégation des variables de registre Remarques concernant l'authentification des clients distants Prise en charge des E-S en accès direct (DIO) et des E-S concurrents (CIO) Technologie du distributeur et redirection automatique des clients Considérations relatives à la redirection automatique du client pour le catalogage sur un serveur DB2 Connect Support du compte système local (Windows) Support de l'ID utilisateur en deux parties Détails d'authentification Kerberos Informations supplémentaires pour le support Kerberos Administration : Performances Comparaison de la variable de registre DB2_FORCE_FCM_BP dans des environnements 32 bits et 64 bits Actualisation des statistiques RUNSTATS après la création de table Nouveau code raison pour SQL1169N Stratégies d'optimisation pour les tables MDC Précisions concernant la description des paramêtres de configuration NEWLOGPATH, MIRRORPATH et OVERFLOWLOGPATH Valeur par défaut de la variable DB2_COLLECT_TS_REC_INFO L'utilitaire Gouverneur Choix d'une méthode de réorganisation de table Prise en charge de page volumineuse pour la mémoire du gestionnaire FCM (AIX 5L 64 bits) La variable de registre DB2_RESOURCE_POLICY accepte un nouvel élément Nouvelles variables d'environnement système (Linux) Nouvelle variable de registre de communication Nouvelle variable de performances Variables du compilateur SQL mises à jour du paramêtre de configuration Fichier SQLDBCONF des paramêtres de configuration de la base de données Modification de la valeur par défaut de DB2_HASH_JOIN La variable de registre DB2NTNOCACHE est déconseillée Tables d'explication et organisation des informations d'explication Instruction de capture des informations d'explication Codes retour supplémentaires issus de db2CfgGet API, paramêtre collate_info Définition automatique de la taille de lecture anticipée par défaut et mise à jour des valeurs par défaut Administration : Planification Tables à regroupement de colonnes Conception d'espace table catalogue Codes territoire et pages de codes pris en charge Fonction XA prise en charge par DB2 Universal Database mise à jour des valeurs TPM et tp_mon_name pour les formats de chaîne xa_open Activation des tables de conversion pour les pages de codes 923 et 924 Fichiers de table de conversion pour les pages de codes euro Référence API Paramêtre oBackupsize API db2Backup Prise en charge de l'option SYNCPOINT Nouvelle zone de la structure SQLEDBDESC Corrections apportées à la nouvelle zone dans la structure SQLB-TBSPQRY-DATA Développement d'application : Construction et exécution des applications Exemples de reconfiguration dynamique (AIX) Logiciels de développement pris en charge par Linux Personnalisation des options de précompilation et de définition d'accès pour les procédures SQL Option de compilation C/C++ requise (Linux on POWER 64 bits) Commande de compilation et de liaison pour les procédures mémorisées Micro Focus COBOL (HP-UX) Version minimale de Micro Focus COBOL (HP-UX) prise en charge Définition des variables d'environnement pour les procédures mémorisées Micro Focus COBOL (Windows) Développement d'applications : CLI (Call Level Interface) Mot clé de configuration CLI/ODBC Trusted_Connection mise à jour de table de diagnostics pour la fonction SQLDescribeParam (CLI) Exécution asynchrone de Call Level Interface Attribut de connexion SQL_ATTR_PING_DB Fonction SQLBindParameter (CLI) Fonction SQLMoreResults (CLI) Attributs d'environnement supplémentaires Curseurs flottants dynamiques Mot clé de configuration RetCatalogAsCurrServer CLI/ODBC Mot clé de configuration CLI/ODBC ReceiveTimeout Attribut de connexion SQL_ATTR_RECEIVE_TIMEOUT Mot clé de configuration CLI/ODBC Reopt Attribut de connexion et d'instruction SQL_ATTR_REOPT Mot clé de configuration CLI/ODBC CurrentPackageSet Attribut de connexion SQL_ATTR_CURRENT_PACKAGE_SET Mot clé de configuration CLI/ODBC MapBigintCDefault Mot clé de configuration CLI/ODBC DescribeOutputLevel Développement d'application : Programmation des applications client Connectivité du pilote JDBC DB2 Universal Type 4 à DB2 VM/VSE non prise en charge Concentrateur de connexions du pilote JDBC de DB2 Universal et équilibrage des charges de travail Sysplex Mot clé de configuration CLI/ODBC OleDbReportIsLongForLongTypes Mot clé de configuration CLI/ODBC OleDbSQLColumnsSortByOrdinal Groupe de propriétés DB2 Data Source d'IBM DB2 OLE DB Provider Syntaxe d'URL incorrecte dans le diagramme de syntaxe DB2Binder Redirection des clients du pilote JDBC DB2 Universal Personnalisation des propriétés de configuration du pilote JDBC de DB2 Universal Fonction db2secFreeToken supprimée Déployer les plug-ins de sécurité personnalisés avec précaution Plug-ins de sécurité API du plug-in de sécurité Conventions de dénomination du plug-in de sécurité(Linux et UNIX) Restrictions sur les bibliothèques de plug-ins de sécurité Prise en charge du module d'extension GSS-API du pilote JDBC DB2 Universal Les plug-ins de sécurité GSS-API ne prennent pas en charge l'authentification à transmissions multiples Les plug-ins de sécurité GSS-API ne prennent pas en charge le chiffrement et la signature des messages Arrêt implicite des opérations dans des applications autonomes Prise en charge des transactions réparties Développement d'application : Programmation des applications serveur Procédures d'exécution de langage commun (CLR) à ensembles de résultats multiples Modes de contrôle d'exécution de routine CLR (clause EXECUTION CONTROL) Précision décimale maximale et échelle des routines CLR Référence sur les commandes Exemples d'utilisation db2demigdbd Correction des remarques d'utilisation de la commande db2ckbkp Conventions de dénomination pour des objets de base de données et des ID Commande REORGCHK Commande REORG INDEXES/TABLE Commande BACKUP DATABASE Migration des bases de données db2inidb - Initialisation d'une commande de base de données miroir Remarque sur l'utilisation de la commande db2iupdt Nouveau paramêtre pour la commande db2sqljcustomize Nouveau paramêtre pour la commande sqlj mises à jour de la commande de surveillance et d'identification des incidents (db2pd) mise à jour de la commande SET CLIENT mise à jour de la commande PRECOMPILE mise à jour de la commande UPDATE HISTORY FILE mises à jour des commandes EXPORT et IMPORT mise à jour de la commande LOAD Modificateurs de type de fichier pour l'utilitaire de chargement Modificateurs de type de fichier pour l'utilitaire d'importation Commande ATTACH Commande RECOVER DATABASE Commande UPDATE HISTORY FILE db2updv8 - mise à jour de la base de données avec la commande de niveau actuel version 8 Formatage de fichiers de déroutement (Windows) Mouvement des données Fichiers de liens utilisés par les utilitaires d'exportation, d'importation et de chargement Utilisation de l'importation avec des insertions mises en mémoire tampon Perte d'informations d'index lors de l'utilisation de l'utilitaire d'importation Récupération de données et haute disponibilité Généralités sur la sauvegarde Utilisation de la sauvegarde Présentation du HADR (High Availability Disaster Recovery) Prise en charge de la sauvegarde inter-plateformes et de la restauration Sauvegarde sur bande (Linux) Tivoli Storage Manager Restrictions de valeurs pour l'hôte local HADR et les paramêtres de service locaux Configuration système supplémentaires pour HADR Opérations non répliquées pour la récupération HADR HADR ne prend pas en charge les journaux bruts Comparaison entre un moniteur de panne et un moniteur de santé Arrêt du contrôle de panne Data Warehouse Center Définition de l'environnement client d'entrepôt de données dans les systèmes d'exploitation AIX et Solaris mise à jour de la configuration du gestionnaire de bases de données avant l'installation des fonctions de transformation d'entrepôt Variable d'environnement VW_NETRC ajoutée au Data Warehouse Center (UNIX) DB2 Data Warehouse Center requiert une base de données au format Unicode Définition des sources et cibles d'entrepôt de DB2 mises à jour du tutoriel Business Intelligence Définition du seuil de purge pour les fichiers journaux de l'entrepôt Prise en charge de Data Warehouse Center pour le chargement CURSOR Limites et migration de la base de données de contrôle de l'entrepôt Unicode Modification du format de date de la colonne Modification Définition des fonctions de transformation statistiques dans Data Warehouse Center Préparation de l'installation des agents d'entrepôt Configuration requise pour l'agent d'entrepôt iSeries DB2 .NET Data Provider Prise en charge du programme de lecture de données actives concurrentes Propriété DB2Connection.ConnectionString DB2 Connect Modification apportée à la négociation de type d'authentification via une passerelle Nouveau scénario de sécurité Corrections apportées aux diagrammes Centre de développement La version 8.2 de DB2 Development Center requiert le niveau 9.2.9 de Distributed Debugger Restriction de longueur dans la fenêtre de modification de variable de DB2 Development Center Restrictions concernant les pilotes DB2 Universal type 2 et type 4 Outils d'interface graphique Modification du caractère de fin de l'instruction Etat de base de données indisponibles dans la fenêtre de détails de la base de données du Centre de contrôle Ecriture par défaut dans la table (Création du moniteur d'événements) Centre de gestion des catalogues d'informations Scripts de configuration - exemples Configuration du serveur Web Installation et configuration - Informations complémentaires Fichier de configuration de noeud DB2 - db2nodes.cfg Variable de registre DB2NOLIOAIO remplacée par DB2LINUXAIO (Linux) Serveur d'applications pour DB2 UDB Activation du serveur d'applications intégré DB2 Déploiement des outils Web DB2 E-S directes sur les unités de blocs (Linux) Démon du Centre de documentation DB2 (Linux et UNIX) Mots clés des fichiers réponses et fichiers modèles Codes d'erreur de l'installation au moyen d'un fichier réponses Comptes utilisateur requis pour l'installation de serveurs DB2 (Windows) Prise en charge d'E-S asynchrones (Linux) Modification de la commande db2ln pour créer des liens de bibliothèques DB2 UDB 64 bits (Linux et UNIX) Query Patroller mise à jour du comportement de classe de requête mises à jour des définitions des états de requête gérés Création de tables Explain avant l'exécution du générateur de données historisées pour Query Patroller Vérification des fichiers journaux Query Patroller pour l'analyse historique arrêt anormal du générateur de données historisées mises à jour des classes de requêtes dynamiques Comportement des requêtes imbriquées Limitations par type d'instruction SQL Limitation de résolution à l'aide de Terminal Services Client Nouvelle prise en charge de groupes pour les soumissions de requêtes Query Patroller - Limites de planification Autorisation requise pour utiliser la commande RUN IN BACKGROUND QUERY Création d'un alias pour une table de résultat Un ID utilisateur isolé nécessite un fichier journal qpdiag.log avec accès en écriture et un chemin d'accès Mise en route mise à jour du centre de documentation DB2 installé sur votre ordinateur ou sur un serveur intranet Mémoire : configuration minimale Clarification de la prise en charge client DB2 UDB Modification des paramêtres du noyau (Linux) Modification des paramêtres du noyau (Environnement d'exploitation Solaris) Le manuel DB2 Universal Database Express Edition Version 8.2 Basics est prêt pour téléchargement Vérification de la préparation de vos bases de données pour la migration Certification des critères communs pour DB2 UDB Extension spatiale Vérification de l'installation de l'Extension spatiale Routines d'administration SQL Nom de colonne incorrect documenté dans l'ensemble de résultats pour la fonction de table SNAP_GET_DYN_SQL Les fonctions de table de moniteur d'images ont des vues propres à la version La procédure GET_DB_CONFIG requiert une taille de page minimale de 8 ko pour un espace de table utilisateur temporaire Référence SQL EXPLAIN_DIAGNOSTIC : une nouvelle table Explain EXPLAIN_DIAGNOSTIC_DATA : une nouvelle table Explain Schéma utilisé avec la fonction Explain Représentations de chaînes des valeurs date/heure Moniteur système Récapitulatif des indicateurs d'état Liste d'applications découplées sans concentrateur de connexion activé Contrôle de la progression du processus d'annulation d'exécution Extension XML Procédures mémorisées - Modification des paramêtres dxxGenXML, dxxGenXMLClob, dxxRetrieveXML et dxxRetrieveXMLClob Décomposition des documents XML en données DB2 UDB Décomposition de documents de plus de 1 Mo Configuration des fonctions UDF MQ XML avec Extension XML Variable d'environnement DB2DXX_MIN_TMPFILE_SIZE Extension Spatiale Redéfinition UDT DB2XML.XMLVarchar Annexe A. Structure des répertoires du CD-ROM DB2 UDB FixPack Annexe B. Comment prendre contact avec IBM B.1 Informations produit Annexe C. Remarques C.1 Marques A propos des Notes sur l'édition Contenu Les Notes sur l'édition contiennent les informations les plus récentes concernant la version 8 des produits DB2 : DB2 Universal Database Personal Edition DB2 Universal Database Workgroup Server Edition DB2 Universal Database Workgroup Server Unlimited Edition DB2 Universal Database Enterprise Server Edition DB2 Personal Developer's Edition DB2 Universal Developer's Edition DB2 Warehouse Manager DB2 Warehouse Manager Sourcing Agent pour z/OS DB2 Data Links Manager DB2 Extension Net Search DB2 Extension Spatiale DB2 Intelligent Miner Scoring DB2 Intelligent Miner Modeling DB2 Intelligent Miner Visualization DB2 Connect Application Server Edition DB2 Connect Enterprise Edition DB2 Connect Personal Edition DB2 Connect Unlimited Edition DB2 Query Patroller Les rubriques du Centre de documentation DB2 (http://publib.boulder.ibm.com/infocenter/db2help/) sont mises à jour régulièrement, mais pas nécessairement pour chaque version. Les notes sur l'édition livrées avec chaque version peuvent communiquer des informations critiques. Cependant, les notes sur l'édition contiennent des informations critiques uniquement lorsque : * Les rubriques du Centre de documentation DB2 ne sont pas mises à jour pour les éditions correspondantes * Les informations critiques sont découvertes ultérieurement dans le cycle de développement, après la mise à jour du Centre de documentation DB2 Le Centre de documentation DB2 doit rester votre principale source d'information. Vous devez lire les notes sur l'édition afin d'obtenir les dernières informations qui s'appliquent à la version particulière de votre produit DB2. Vous devez également consulter le fichier Lisez-moi du groupe de correctifs (FixPak) qui contient des informations spécifiques à l'installation de votre produit DB2. Vous pouvez obtenir des informations détaillées sur le Centre de documentation DB2 sous l'en-tête Ressources additionnelles de cette section. Informations sur la version La documentation la plus récente est disponible dans la dernière version du Centre de documentation DB2, accessible via un navigateur. L'URL permettant de télécharger la version la plus récente de la documentation est fournie dans la section Ressources supplémentaires, à la suite de la présente section. Les marques de révision figurant dans les Notes sur l'édition de DB2 UDB signalent le texte qui a été ajouté ou modifié. Une barre verticale ( | ) indique des informations ajoutées ou modifiées pour l'édition actuelle. Chemins d'accès au répertoire Sous Windows, la barre oblique inverse (\) permet de séparer les répertoires dans un chemin d'accès. Sous Linux et UNIX, on utilise la barre oblique standard (/). Les Notes sur l'édition respectent cette convention lorsque les informations qu'elles contiennent concernent une plateforme spécifique. En revanche, lorsque les informations ne sont pas associées à une plateforme donnée, il se peut que vous deviez entrer le chemin d'accès au répertoire en ne respectant pas ce qui est indiqué. Par exemple, si vous travaillez sous Windows, vous devrez entrer le chemin d'accès au répertoire en utilisant des barres obliques inverses (\) même si les Notes sur l'édition préconisent des barres obliques standard (/). Inversement, si vous travaillez sous Linux ou UNIX, vous devez entrer le chemin du répertoire en utilisant des barres obliques standard (/), même si les Notes sur l'édition préconisent des barres obliques inverses (\). DB2 Information Integrator Pour obtenir des informations sur des questions en suspens liées à DB2 Information Integrator et aux technologies qui lui sont associées, y compris les systèmes fédérés, les réplications SQL et Q, la publication d'événements, les services Web et la gestion de métadonnées, consultez les Notes sur l'édition de DB2 Information Integrator. Pour ce faire, reportez-vous à la page d'aide Web à l'adresse : http://www.ibm.com/software/data/integration/db2ii/support.html Ressources supplémentaires La dernière version de la documentation DB2 est toujours la version du centre de documentation DB2 hébergé à l'adresse suivante http://publib.boulder.ibm.com/infocenter/db2help/ ainsi que les toutes dernières modifications contenues dans ces notes sur l'édition. Vous pouvez également installer le centre de documentation DB2 sur votre ordinateur personnel ou le serveur intranet à l'aide du CD-Rom de documentation HTML DB2 livré avec votre produit DB2. Une fois installé, vous pouvez appliquer le dernier FixPack de documentation disponible à partir du site du support DB2 à l'adresse http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html. Toutefois, les FixPacks de documentation DB2 ne sont pas souvent publiés et ne reflètent pas toujours les niveaux les plus récents de la documentation DB2. Les manuels des produits DB2 au format PDF sont également rarement mis à jour et ne reflètent pas toujours les niveaux d'information les plus récents. Le site Web de support DB2 UDB contient des notes techniques et des notifications flash de service qui décrivent les modifications apportées à la documentation ainsi que les limites et les solutions connues après la création du présent document. L'adresse du site Web de support DB2 UDB est la suivante : http://www.ibm.com/software/data/db2/udb/support.html. Des informations relatives à la migration vers les produits DB2 sont disponibles à l'adresse suivante : http://www-1.ibm.com/support/ docview.wss?rs=71&uid=swg21200005 (portail de migration DB2). Pour plus d'informations sur le Centre de développement DB2 et DB2 pour z/OS, voir http://www.ibm.com/software/data/db2/os390/spb/. Le manuel Data Links Manager Administration Guide and Reference (référence SC27-1221-01) a été mis à jour au format PDF lors de la publication du FixPack 1 et peut être téléchargé à partir du site de support technique DB2, à l'adresse suivante : http://www.ibm.com/software/data/db2/udb/support.html. La documentation relative au produit DB2 Life Sciences Data Connect peut être téléchargée à partir du site d'IBM à l'adresse suivante : http://www.ibm.com/software/data/db2/lifesciencesdataconnect/ Pour obtenir les informations les plus récentes sur la famille de produits DB2, souscrivez gratuitement à DB2 Magazine. L'édition en ligne de ce magazine est disponible à l'adresse http://www.db2mag.com ; les instructions concernant un abonnement éventuel peuvent également y être consultées. A propos de cette version Nouveautés de la présente édition Ce chapitre n'a pas été mis à jour depuis la version 8.2, FixPack 3 (équivalente de la version 8.1, FixPack 10). Pour obtenir des informations détaillées sur les correctifs, voir le chapitre Historique des correctifs de produit des notes sur l'édition. De même, le fichier Readme du FixPack décrit les nouveaux éléments de cette édition. Historique des correctifs du produit Pour obtenir la liste des rapports officiels d'analyse de programme (APAR) désignés par ce correctif, consultez la page Web suivante : http://www.ibm com/software/data/db2/udb/support/apars.html Compatibilité Les marques de révision signalent le texte qui a été ajouté ou modifié. Une barre verticale ( | ) indique des informations ajoutées ou modifiées pour la version 8.2 FixPak 4 (équivalente de la version 8.1, FixPak 11). Compatibilité Niveau du groupe de correctifs (Fixpak) et installation de nouveaux produits Vous devrez probablement installer un produit DB2 à un niveau différent que celui de la version d'un produit DB2 actuellement sur votre ordinateur. Tous les produits DB2 doivent se situer sur un même niveau. Si le produit que vous installez est d'un niveau plus récent que la version des produits DB2 installés sur l'ordinateur, vous devrez mettre à jour vos produits DB2 existants au niveau le plus récent. Par exemple, si vous installez DB2 Connect pour iSeries au niveau du Fixpak 10 et que vos autres produits DB2 sont au niveau du Fixpak 9, vous devrez appliquer le Fixpak 10 à tous vos produits DB2 avant d'installer DB2 Connect pour iSeries, Fixpak 10. Inversement, si vous installez un produit sur un ordinateur qui dispose d'un produit DB2 avec une version plus récente, vous devez suivre les instructions suivantes : Pour les systèmes d'exploitation Windows Le groupe de correctifs (FixPak) permet d'installer le produit directement sur le système au même niveau. La licence peut être ajoutée après l'installation à l'aide de la commande suivante : db2licm -a nomfichier où nomfichier est le nom du fichier de licence qui se trouve sur votre support original dans le répertoire db2\license. Vous pouvez également ajouter cette licence au répertoire db2\license du groupe de correctifs et la licence sera installée par le processus d'installation. Pour les systèmes d'exploitation UNIX et Linux Conditions préalables Avant d'installer un autre produit ou composant, vous devez arrêter les éléments suivants : * Les instances DB2 existantes * Le serveur d'administration DAS (DB2 Administration Server) Les instances et le serveur DAS que vous devez arrêter sont ceux qui appartiennent à l'installation DB2 dans laquelle les produits et composants DB2 supplémentaires seront installés. Vous obtiendrez des instructions supplémentaires en consultant le fichier Readme du FixPak. Procédure 1. Vous disposez de trois méthodes d'installation d'un produit ou composant supplémentaire à un niveau DB2 inférieur que la version actuelle du produit DB2 ou des produits du système. Choisissez l'une des méthodes suivantes : Exécution du programme db2setup Vous pouvez exécuter db2setup en mode interactif avec l'interface graphique ou de façon autonome avec un fichier de réponses. N'effectuez aucune configuration, telle qu'une création d'instance, au cours de l'installation du produit ou du composant supplémentaire avec db2setup. Si votre système actuel ne dispose pas du serveur DAS DB2, et que le nouveau produit ou composant en a besoin ou le prend en charge, db2setup va configurer le serveur DAS DB2 au cours de l'installation. Sur certaines plateformes, des erreurs peuvent survenir au cours de la création du serveur DAS DB2 avec db2setup. Ces erreurs sont connues et peuvent être ignorées. Le programme db2setup se situe sur l'image ou le CD du produit DB2 du produit ou composant supplémentaire que vous installez. Pour obtenir des informations détaillées concernant l'utilisation de db2setup, consultez le Guide des commandes et le document relatif aux informations supplémentaires sur l'installation et la configuration. Exécution du script db2_install Le script db2_install permet d'installer tous les composants qui ne le sont pas actuellement sur votre installation DB2, excepté les composants de messagerie et de langue non-anglophone. Par conséquent, vous devriez utiliser db2_install pour installer de nouveaux produits ou composants, puisque ce script ne va pas mettre à jour les composants DB2 existants. Le script db2_install se situe sur l'image ou le CD du produit DB2 du produit ou composant supplémentaire que vous installez. Pour obtenir des informations détaillées concernant l'utilisation du script db2_install, consultez le document d'informations supplémentaires sur l'installation et la configuration. Utilisation du programme d'installation système Vous pouvez utiliser le programme d'installation de votre système pour installer de nouveaux produits et composants. Pour obtenir des informations détaillées concernant l'utilisation du programme d'installation du système, consultez le document d'informations supplémentaires sur l'installation et la configuration. 2. Vous devez effectuer les tâches suivantes après avoir installé un produit ou un composant supplémentaire : a. Appliquez à nouveau le groupe de correctifs courant à tous les produits pré-existants afin que les nouveaux produits et les produits existants se trouvent au même niveau. Pour illustrer ce scénario, supposons que les conditions suivantes sont réunies : * DB2 Universal Database Enterprise Server Edition est installé au niveau du FixPak 10. * Ensuite, vous installez DB2 Query Patroller au niveau du FixPak 7 conformément aux instructions de l'étape précédente. L'étape de post-installation consiste en une nouvelle application du FixPak 10 courant. Remarque : Au cours de l'installation du groupe de correctifs, vous pouvez recevoir un message d'erreur semblable à celui-ci : Le package db2cliv81 est déjà installé sur le système. L'installation du module de correction nnnnnnn-nnn s'est terminée de façon anormale. Pour l'installer à nouveau, vous devez commencer par le désinstaller avant toute nouvelle tentative. Cette erreur se produit car le package db2cliv81 du système est déjà au même niveau que le groupe de correctifs installé. Vous pouvez ignorer ce genre d'erreur. Utilisez le programme d'installation système pour confirmer que le composant ou package DB2 est réellement au même niveau que le groupe de correctifs installé. b. Lancez la commande db2iupdt afin de mettre à jour les instances DB2 existantes qui appartiennent à l'installation DB2 actuelle. c. Lancez la commande dasupdt afin de mettre à jour le serveur DAS DB2 associé à l'installation DB2 actuelle. d. Au besoin, lancez la commande db2isetup afin de créer une nouvelle instance DB2 UDB ou configurer une instance existante. Pour obtenir des informations détaillées concernant l'installation du groupe de correctifs (FixPak), la mise à jour de l'instance et du serveur DAS DB2 et les autres étapes de post-installation, consultez le fichier Readme du FixPak. Compatibilité amont des bases de données DB2 UDB version 8.2 Si vous créez une base de données avec DB2 Universal Database version 8.2, vous ne pourrez pas l'utiliser au niveau de la version 8.1, mais uniquement au niveau de la version 8.2 ou ultérieure. Les bases de données créées au niveau de DB2 UDB version 8.2 peuvent comporter des fonctionnalités supplémentaires non disponibles dans les versions antérieures. Ceci risque d'entraîner un comportement imprévu et inopportun si vous essayez d'utiliser votre nouvelle base de données à un niveau antérieur. Remarque : La compatibilité amont entre la version 8.2 et la version 8.1 n'est possible que si la base de données a été créée sous la version 8.1. même dans ce cas, la migration amont ne peut se faire qu'après le lancement de l'outil db2demigdb. Des incidents peuvent néanmoins survenir si vous avez utilisé des fonctions intégrées qui ont changé dans la version 8.2. Précisions concernant la prise en charge du client DB2 UDB La section "Généralités concernant le client DB2" ("DB2 client overview") du manuel Clients DB2 - Mise en route spécifie ce qui suit : Les clients DB2 peuvent se connecter aux serveurs DB2 de même niveau ou qui leur sont postérieurs de deux éditions ou antérieurs d'une édition. Cette affirmation doit être corrigée de la façon suivante : Si les connexions des clients de la version N aux serveurs de la version N + 2 sont possibles dans certains environnements, l'équipe du support DB2 prend en charge cette configuration tant que la version N est en service. Lorsqu'elle ne l'est plus, cette configuration n'est plus prise en charge. Ainsi, la connexion des clients DB2 version 7 à un serveur DB2 version 8 n'est plus prise en charge par l'équipe du support DB2 car la version 7 a été retirée de la commercialisation. Modifications du registre de santé lors de la migration amont de DB2 UDB version 8.2 vers DB2 UDB version 8.1 Toute modification du registre effectuée au niveau de DB2 UDB version 8.2 est perdue lors de la migration vers la version DB2 UDB version 8.1. Le registre revient au fichier HealthRules.reg de la version 8.1, dans lequel se trouvent les paramêtres antérieurs à la mise à niveau vers DB2 UDB version 8.2 et à l'utilisation des paramêtres du fichier HealthRules2.reg. Autres FixPaks (Linux et UNIX) Avant DB2 Universal Database (UDB) version 8, les FixPaks ne fonctionnaient que comme des mises à jour de modules ou d'ensembles de fichiers DB2 (UDB) installés à un emplacement fixe. En d'autres termes, l'installation de FixPaks remplaçait les fichiers existants par des fichiers mis à jour fournis dans les FixPaks. En effet, plusieurs niveaux de FixPaks DB2 ne pouvaient pas coexister sur un système unique. Désormais, DB2 UDB Enterprise Server Edition (ESE) peut exister à différents niveaux de fixpack sur le même système pour les systèmes d'exploitation basés Linux et UNIX. Cette fonction, prise en charge par les environnements d'exploitation en production depuis la version 8.1.2, est mise en oeuvre à l'aide des deux types de FixPack suivants : FixPack normaux * Ils sont non seulement disponibles pour ESE mais aussi pour tous les produits DB2 version 8 pris en charge pour les plateformes associées * Ils peuvent être installés directement par-dessus l'installation existante, dans le répertoire /usr/opt/db2_08_01 sous AIX ou dans le répertoire /opt/IBM/db2/V8.1 sur les autres plateformes * Ne peuvent être appliqués sur d'autres FixPaks déjà installés. FixPacks de remplacement * Ils peuvent être installés en tant que copie entièrement nouvelle de DB2 UDB ESE * Ils sont installés dans un emplacement prédéfini, autre que celui d'une installation standard de DB2 UDB * Il n'existe pas de procédure d'installation d'interface graphique pour ces FixPaks. Remarques : 1. Vous n'êtes pas obligé d'installer des FixPacks multiples si vous estimez que cela n'est pas nécessaire à votre environnement. Vous pouvez envisager l'installation de FixPaks multiples en cas de besoin d'instances ESE DB2 UDB de version 8 à plusieurs niveaux de groupe de correctifs sur un même système. Par exemple, des FixPaks multiples vous permettent de vérifier les modifications du FixPak dans votre environnement de test sans affecter vos systèmes de production. 2. Depuis IBM DB2 UDB Enterprise Server Edition (ESE) pour Linux et UNIX, version 8.1.2, les FixPacks sont pris en charge dans des environnements d'exploitation en production une fois installés en tant que FixPacks multiples. 3. Sous Linux, des FixPacks de remplacement sont disponibles uniquement pour les plateformes suivantes : * x86 (32-bit) * S/390 (31 bits) 4. Deux instances DB2 ou plus qui s'exécutent à des niveaux de fixpak différents sur le même système ne prennent pas en charge les opérations qui lancent des IPC (appels de procédure interne) DB2 tels que des requêtes fédérées. Toutes les instances impliquées dans de telles opérations sur le même système doivent être au même niveau de fixpak DB2. 5. Les FixPaks de remplacement de la version 8 de DB2 UDB prennent en charge uniquement DB2 ESE sur les plateformes Linux et Unix prises en charge. Pour mettre à jour une instance de FixPack multiple à un niveau de FixPack différent, effectuez l'une des opérations suivantes : * Installez le FixPack normal approprié sur l'installation GA (General Availability) et mettez à jour l'instance en exécutant la commande db2iupdt à partir du chemin d'accès GA existant. * Installez le FixPack de remplacement approprié dans son propre chemin unique et mettez à jour l'instance en exécutant la commande db2iupdt à partir de ce chemin. Pour plus d'informations concernant les FixPaks de remplacement : * Consultez le fichier Readme du dernier FixPak * Consultez le site de support technique IBM à l'adresse suivante : http://www.ibm.com/software/data/db2/udb/support.html Compatibilité des données de requête Query Patroller, version 8.2.2 avec les précédents FixPaks Avec la version 8.2.2 (équivalente de la version 8.1, FixPak 9), le contenu de la table de contrôle TRACK_QUERY_INFO de Query Patroller enregistré dans un environnement 32 bits peut désormais être utilisé dans un environnement 64 bits. Cette fonctionnalité facilite la migration vers un environnement 64 bits. Les informations enregistrées dans la table de contrôle TRACK_QUERY_INFO de Query Patroller dans la version 8.2.2 ne permettent pas de générer des données d'historique pour cette requête ou d'exécuter des requêtes suspendues à un niveau de FixPak antérieur. Restrictions de la prise en charge du serveur précédent de Data Warehouse Center Les limitations suivantes s'appliquent à la prise en charge du serveur précédent pour Data Warehouse Center de DB2 Universal Database (UDB) Enterprise Server Edition version 8 : Prise en charge d'objets LOB * Si vous utilisez une base de données de contrôle d'entrepôt sur un serveur antérieur à la version 8 de DB2 UDB Enterprise Server Edition, vous ne pouvez pas utiliser d'objets LOB. Vous devez mettre à niveau cette base de données ou vous pouvez procéder à sa migration vers un système sur lequel est installé le serveur d'entrepôt DB2 UDB Enterprise Server Edition version 8 et l'utiliser en local à partir de ce système. * Pour déplacer des objets LOB de Data Warehouse Center vers DB2 UDB, et vice versa, vous devez installer la version 8 de DB2 UDB Enterprise Server Edition. Prise en charge de SNA (Systems Network Architecture) Si vous utilisez l'architecture SNA pour vous connecter aux sources et cibles d'entrepôt, vous devez modifier la configuration pour utiliser le protocole TCP/IP sur SNA ou utiliser l'agent d'entrepôt de Windows NT. Support des utilitaires EXPORT et LOAD L'utilitaire Data Warehouse Center Version 8 LOAD ne prend pas en charge la base de données cible Version 7. Pour conserver votre cible en tant que base de données Version 7, vous devez modifier l'étape LOAD en étapes SQL Select et Insert. Ces étapes font appel à l'instruction DELETE* suivie des instructions SELECT et INSERT. Pour qu'elles puissent être utilisées, la base de données doit consigner toutes les transactions. Par conséquent, les performances obtenues avec les étapes SQL Select et Insert sont moins bonnes que celles obtenues avec les utilitaires EXPORT et LOAD. Correctifs APAR du Centre de développement requis pour la prise en charge de SQLJ et SQL Assist sur DB2 UDB pour OS/390, version 6, et DB2 UDB pour z/OS, version 7 Lors de l'utilisation du Centre de développement sur un client de développement d'applications pour DB2 Universal Database (UDB) version 8, sous Windows ou UNIX, les correctifs APAR suivants doivent être installés sur le serveur afin d'activer la prise en charge de SQLJ et SQL Assist : DB2 UDB pour z/OS, version 7 * PQ65125 - fournit la prise en charge de SQLJ permettant la création de procédures mémorisées Java SQLJ * PQ76858 - Fournit une prise en charge de SQL Assist DB2 UDB pour OS/390, version 6 * PQ76858 - Fournit une prise en charge de SQL Assist Deux versions de SQL Assist sont lancées à partir de DB2 UDB Vous pouvez appeler les versions 7 et 8 de SQL Assist à partir de DB2 Universal Database, version 8. Il est possible de lancer la version 7 à partir de DB2 Data Warehouse Center. Tous les autres centres lancent la dernière version 8. L'aide en ligne du produit contient des informations complémentaires sur la version 7 de SQL Assist. Modification du comportement du serveur Unicode Dans la version 7, les serveurs Unicode ne prenaient pas en charge les pages de codes graphiques envoyées par les applications au moment de la connexion et partaient du principe que c'était UCS2 Unicode (page de codes 1200) qui était utilisé. Les serveurs Unicode en version 8 respectent maintenant la page de codes envoyée par le client. Modification des paramêtres de configuration de la base de données lors de la migration DB2 UDB version 8.2 utilise un nouveau fichier (16 ko) de paramêtres de configuration de la base de données intitulé SQLDBCONF. Il s'agit d'un fichier distinct du fichier SQLDBCON (4 ko) de paramêtres de configuration de la base de données de DB2 UDB version 8.1. après la migration vers DB2 UDB version 8.2, le produit fait migrer le contenu du fichier SQLDBCON de la version 8.1 et consigne les changements de paramêtres de configuration de la base de données dans le fichier SQLDBCONF. Le fichier SQLDBCON de la version 8.1 est conservé sans être utilisé. Si vous effectuez une migration amont vers DB2 UDB version 8.1, le produit utilise alors à nouveau le fichier SQLDBCON de la version 8.1 pour consigner les changements de paramêtres de configuration de la base de données. Le fichier SQLDBCONF de la version 8.2 est conservé, mais n'est pas reconnu par le produit DB2 UDB version 8.1. Les changements apportés au fichier de paramêtres de configuration de la base de données entre la migration vers la version 8.2 et la migration amont vers la version 8.1 sont annulés car ils ne sont pas transmis au fichier SQLDBCON d'origine. En outre, si vous migrez de nouveau vers DB2 UDB version 8.2, le produit DB2 UDB version 8.2 détecte l'existence du fichier SQLDBCONF de la version 8.2 et l'utilise à nouveau pour consigner les changements de paramêtres de configuration de la base de données. Le fichier SQLDBCON de la version 8.1 est conservé, mais n'est pas reconnu par le produit DB2 UDB version 8.2. Les changements apportés au fichier de paramêtres de configuration de la base de données, entre la migration amont vers la version 8.1 et la nouvelle migration vers la version 8.2 sont annulés car ils ne sont pas transmis au fichier SQLDBCONF existant. Améliorations des messages au format db2diag.log Le format du fichier db2diag.log a fait l'objet de différentes améliorations pour la version 8.2. Il est maintenant plus facile de lire manuellement le fichier journal et de l'analyser par programme. Les améliorations sont les suivantes : * Chaque entrée comporte un ensemble complet d'informations d'en-tête. * Les parties de message et de données de l'enregistrement de journalisation sont marquées clairement, ce qui facilite l'utilisation et la compréhension de cet enregistrement. * Chaque enregistrement inclut l'horodatage et le fuseau horaire. * Chaque zone porte un nom clair en lettres majuscules. * Les lignes d'en-tête et de message sont limitées à 80 caractères. * De nouvelles zones ont été ajoutées, et plus particulièrement une zone de niveau de gravité pour vous aider à trouver les entrées les plus importantes. D'autres modifications ont été apportées, telles que le remplacement du nom de la zone base de données par DB. Les enregistrements d'événements ont été ajoutés en tant que messages de diagnostic au fichier journal db2diag.log. Exemples d'événements : * mise à jour du registre des profils * mise à jour des paramêtres de configuration Les enregistrements d'événements sont indiqués par la spécification "Event" dans la zone LEVEL. Bien que ces événements ne soient pas des erreurs, il se peut qu'ils soient consignés à des niveaux de diagnostic autres que 4 (Information) ou 3 (Avertissement) en fonction de leur importance. Les variables du registre des profils db2set et les paramêtres de configuration DB ou DBM sont à présent consignés Avec la version 8.2, les mises à jour ci-après sont désormais consignées dans le fichier db2diag.log : * mises à jour de registre de profil db2set, * mises à jour de paramêtre de configuration de base de données et de gestionnaire de base de données. Les messages relatifs à ces mises à jour sont consignés à des niveaux de diagnostic élevés en raison de leur importance. Les types de mises à jour de registre des profils db2set consignés sont les suivants : Modification La commande db2setvariableName=value génère une entrée db2diag.log telle que : 2004-04-22-19.19.14.156959-240 I79582C286 LEVEL: Event PID : 2437242 TID : 1 PROC : db2set INSTANCE: db2user NODE : 000 FUNCTION: DB2 UDB, oper system services, db2set_main, probe:40 CHANGE : CFG DB2SET: DB2DBDFT: From: "OLDDB" To: "SAMPLE" Suppression La commande db2set -r génère une entrée db2diag.log telle que : CHANGE : CFG DB2SET: DB2DBDFT: From: "SAMPLE" To: "" Remarque : Dans l'exemple précédent, l'information d'en-tête a été ignorée. Réinitialisation La commande db2set variableName=value génère une entrée db2diag.log telle que : CHANGE : CFG DB2SET: Profile registry was reset Remarque : Dans l'exemple précédent, l'information d'en-tête a été ignorée. Exemples de mise à jour des paramêtres de configuration de DB et DBM CHANGE : CFG DB SAMPLE: "Maxlocks" From: "10" To: "20" CHANGE : CFG DBM: "Diaglevel" From: "3" To: "1" CHANGE : CFG DBM: Reset to the system defaults Remarque : Dans l'exemple précédent, l'information d'en-tête a été ignorée. Pour obtenir ces messages de mise à jour de configuration, utilisez l'outil db2diag. Par exemple : * Pour sélectionner tous les événements : db2diag -level event * Pour sélectionner les événements de modification : db2diag -g "changeevent=" Compatibilité des produits JDK 1.4.2 pris en charge par DB2 Universal Database pour Linux, UNIX et Windows La version 8.2.2 de DB2 Universal Database (UDB) pour Linux, UNIX et Windows, (équivalente de la version 8.1, FixPak 9), prend en charge JDK 1.4.2 dans tous les environnements de système d'exploitation de poste de travail 32 et 64 bits pris en charge par DB2 UDB. Cette prise en charge inclut, sans y être limitée, la construction et l'exécution d'applications client Java, la construction et l'exécution de routines Java à partir de la ligne de commande, la construction et l'exécution de routines Java à partir du Centre de développement DB2 qui les prend en charge ainsi que l'exécution d'autres outils DB2. Lorsque vous installez la version 8.2 de DB2 UDB, la dernière version prise en charge du kit JDK l'est aussi, sauf si l'installation DB2 UDB est une mise à jour d'une précédente installation de la version 8 de DB2 UDB. Si vous mettez à jour une précédente installation de la version 8 de DB2 UDB, vous devez installer le kit JDK à partir du CD. Le tableau ci-après indique les environnements de système d'exploitation de poste de travail 32 et 64 bits pris en charge par DB2 ainsi que le dernier niveau de JDK pris en charge par chacun d'eux. Pour des informations sur la prise en charge des précédentes versions de JDK, consultez la page Web Java Application Development à l'adresse suivante : http://www.ibm.com/software/data/db2/udb/ad/v8/java/. Tableau 1. Environnements pris en charge par DB2 avec les niveaux JDK pris en charge correspondants +----------------------------------+----------------------------------+ | Environnement pris en charge par | Dernier niveau de JDK pris en | | DB2 | charge | +----------------------------------+----------------------------------+ | Windows IA/AMD 32 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows IA 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows AMD/EM64T 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | AIX 4.3.3 32 bits | JDK 1.3.1 SR6 [2] | +----------------------------------+----------------------------------+ | AIX 5 (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Solaris (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | HPUX RISC & Itanium (hybrid [1]) | JDK 1.4.2.01 | +----------------------------------+----------------------------------+ | Linux AMD/EM64T 32 bits, 64 bits | JDK 1.4.2 [3] | | (hybrid [1]) | | +----------------------------------+----------------------------------+ | Linux IA 32 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux IA 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 31 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 64 bits | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux PPC (hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ Remarques : 1. Hybrid désigne une image d'installation qui contient une prise en charge 32 et 64 bits. 2. JDK 1.3.1 Service Release 6 est l'unique version JDK prise en charge pour AIX 4.3.3. 3. Les outils d'interface graphique DB2 ne sont pas pris en charge sous Linux AMD/EM64T (32 et 64 bits) avec JDK 1.4.2. Une procédure mise à jour de configuration de l'environnement Linux Java est fournie ci-après. Configuration de l'environnement Linux Java Conditions préalables * Avant de mettre en oeuvre les instructions ci-après, effectuez la configuration détaillée à la rubrique "Setting up the UNIX Java environment" du manuel Application Development Guide: Building and Running Applications. * Les commandes utilisées dans les instructions ci-après requièrent les droits root. Procédure Pour construire des applications Java sous Linux avec une prise en charge DB2 JDBC : 1. Installez et configurez l'un des kits de développement pris en charge répertoriés à la rubrique "Linux supported development software" du manuel Application Development Guide: Building and Running Applications. Pour exécuter des procédures mémorisées Java ou des fonctions définies par l'utilisateur, l'éditeur de liens d'environnement d'exécution Linux doit pouvoir accéder à certaines bibliothèques partagées Java ; DB2 UDB doit en outre pouvoir charger ces bibliothèques et la machine virtuelle Java. Le processus qui exécute les procédures mémorisées et les fonctions définies par l'utilisateur charge les bibliothèques dans des emplacements sécurisés uniquement, tel que défini dans le fichier /etc/ld.so.conf. /usr/lib est l'un de ces emplacements sécurisés. Les autres instructions indiquent quelles bibliothèques requièrent des liens symboliques dans /usr/lib. 2. Créez des liens symboliques dans /usr/lib pour pointer sur les bibliothèques partagées Java. Selon la version JDK que vous utilisez, vous aurez un lien vers différentes bibliothèques partagées : Pour IBM Developer Kit 1.3 Créez des liens symboliques pour libjava.so, libjvm.so et libhpi.so. Vous pouvez créer les liens symboliques en exécutant les commandes ci-après en tant que root : cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so où JAVAHOME est le répertoire principal du IBM Developer Kit. Si DB2 UDB ne trouve pas ces bibliothèques, vous recevrez une erreur avec le code -4301 lorsque vous tenterez d'exécuter une routine Java ; en outre, des messages seront générés dans le journal de notification d'administration indiquant des bibliothèques non trouvées. Pour IBM Developer Kit 1.4.1 Créez des liens symboliques pour libjava.so, libjvm.so et libjsig.so. Vous pouvez créer les liens symboliques en exécutant les commandes ci-après en tant que root : cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so où JAVAHOME est le répertoire principal pour IBM Developer Kit. Si DB2 UDB ne trouve pas ces bibliothèques, vous recevrez une erreur avec le code -4301 lorsque vous tenterez d'exécuter une routine Java ; en outre, des messages seront générés dans le journal de notification d'administration indiquant des bibliothèques non trouvées. Pour IBM Developer Kit 1.4.2 sur des plateformes Linux autres que AMD64/EM64T Créez des liens symboliques pour libjava.so, libjvm.so, libhpi.so et libjsig.so. Vous pouvez créer les liens symboliques en exécutant les commandes ci-après en tant que root : cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so ln -fs JAVAHOME/jre/bin/libjitc.so ln -fs JAVAHOME/jre/bin/libxhpi.so ln -fs JAVAHOME/jre/bin/libdbgmalloc.so où JAVAHOME est le répertoire principal pour IBM Developer Kit. Si DB2 UDB ne trouve pas ces bibliothèques, vous recevrez une erreur avec le code -4301 lorsque vous tenterez d'exécuter une routine Java ; en outre, des messages seront générés dans le journal de notification d'administration indiquant des bibliothèques non trouvées. Pour IBM Developer Kit 1.4.2 sous Linux AMD64/EM64T Ce kit pour développeur est différent de celui des autres plateformes Linux. Veuillez suivre la procédure exposée à la prochaine section Autre procédure, puis saisissez la ligne suivante dans /etc/ld.so.conf : JAVAHOME/jre/bin où JAVAHOME est le répertoire principal pour IBM Developer Kit. Si DB2 UDB ne trouve pas ces bibliothèques, vous recevrez une erreur avec le code -4301 ou -1042 lorsque vous tenterez d'exécuter une routine Java. Autre procédure Au lieu de créer explicitement des liens vers les bibliothèques partagées dans le répertoire /usr/lib, vous pouvez ajouter le nom du répertoire qui stocke les bibliothèques partagées Java dans le fichier /etc/ld.so.conf. Ce fichier requiert une autorisation root. après la mise à jour de /etc/ld.so.conf , vous devez lancer la commande ldconfig en tant qu'utilisateur root afin d'activer ces modifications. Si vous rencontrez des difficultés avec cette autre procédure, créez les liens dans le répertoire /usr/lib, comme indiqué précédemment. Correctif Microsoft XP pour les systèmes d'exploitation à 64 bits Si vous utilisez le système d'exploitation Microsoft XP 64 bits (2600) configuré pour l'utilisation du protocole NETBIOS avec la famille de produits DB2, Microsoft doit vous fournir un correctif logiciel. Contactez Microsoft en indiquant le numéro d'article Q317437 de la base de connaissances. systèmes d'exploitation Windows XP Le système d'exploitation Windows XP Home Edition est uniquement pris en charge par les produits DB2 Universal Database (UDB) Personal Edition. Le système d'exploitation Windows XP Professionel est pris en charge par les produits DB2 suivants : * DB2 UDB Express Edition * DB2 UDB Personal Edition * DB2 UDB Workgroup Server Edition * DB2 Connect Personal Edition Les produits DB2 ci-après sont pris en charge sous Windows XP à des fins de développement ou de test uniquement (les environnements de production requièrent Windows 2000 ou Windows Server 2003) : * DB2 UDB Enterprise Server Edition * DB2 Connect Enterprise Edition Disponibilité de l'option HADR vendue séparément Dans DB2 Universal Database (UDB) version 8.2, les détenteurs de DB2 UDB Workgroup Server Edition et DB2 UDB Express Edition (licence attribuée par utilisateur) n'ont pas pu installer l'option HADR (High Availability Disaster Recovery) de DB2 UDB, vendue séparément. Ce problème est résolu dans DB2 UDB Version 8.2 FixPak 1 (équivalent de Version 8.1 FixPak 8). DB2 Warehouse Manager (Version 8.2) et IBM DB2 OLAP Server FP3 et ultérieur Les utilitaires OLAP de DB2 Warehouse Manager Standard Edition, version 8.2, ne sont pas compatibles avec IBM DB2 OLAP Server FP3 (API Essbase niveau 6.5.4) et ultérieur. Il est recommandé d'utiliser DB2 OLAP Server FP2 (Essbase 6.5.3) ou antérieur tant que ce problème n'est pas résolu. Activation de journal d'E-S brutes (Linux avec noyau 2.6) Avant la version 8.2.2 (équivalente de la version 8.1, FixPak 9) de DB2 Universal Database (UDB), l'utilisation de journaux avec des périphériques d'E-S brutes nécessitait de relier une unité physique du pilote de périphérique par caractère brut Linux à l'utilitaire brut. Avec la version 8.2.2 de DB2 UDB (équivalent de la version 8.1, FixPak 9), sur le noyau Linux 2.6, les E-S brutes pour les journaux peuvent être indiquées directement. Par exemple, pour utiliser la partition /dev/sdb1 pour les journaux bruts pour la base de données SAMPLE, vous exécuterez la commande suivante : db2 update db cfg for sample using newlogpath /dev/sdb1 Bien que DB2 UDB prenne toujours en charge la méthode d'utilisation de l'utilitaire brut pour les E-S brutes, cette méthode devient dépassée dans les distributions récentes et risque d'être supprimée dans le futur. Nous vous conseillons d'utiliser la nouvelle méthode qui consiste à indiquer directement un périphérique. Prise en charge de Red Hat Linux par Data Warehouse Center La version 8.2 de DB2 Universal Database prend en charge les versions 3 et 2.1 de Red Hat Enterprise Linux AS. Toutefois, Data Warehouse Center ne prend en charge que Red Hat Enterprise Linux AS, version 2.1. Data Warehouse Center utilise des pilotes ODBC DataDirect non compatibles avec Red Hat Enterprise Linux AS, version 3.1. Par conséquent, Data Warehouse Center ne prend pas en charge les sources et cibles d'entrepôt ODBC d'un site agent Red Hat Enterprise Linux AS, version 3.1. Concentrateur de connexion requis avec WebSphere MQ Transaction Manager et DB2 pour OS/390 Lorsque vous exécutez des applications dans un environnement IBM WebSphere MQ (anciennement connu sous IBM MQSeries), WebSphere MQ peut agir comme un gestionnaire de transactions compatible XA, coordonnant toute transaction distribuée de validation en deux phases. Lorsque WebSphere MQ agit en tant que gestionnaire de transactions et que les sources de données proviennent de la famille de produits DB2, votre configuration doit remplir plusieurs conditions. La plupart de ces conditions sont déjà documentées. Par exemple, vous devez définir le paramêtre de configuration DB2 TP_MON_NAME sur "MQ" dans le client d'exécution DB2. Toutefois, une de ces conditions n'a pas été documentée. Cette condition est spécifique à DB2 Connect lors de la connexion à des sources de données qui sont des serveurs DB2 pour OS/390 : si vous utilisez WebSphere MQ pour coordonner les transactions réparties impliquant des serveurs DB2 pour z/OS et DB2 iSeries, la fonction du concentrateur de connexions de DB2 Connect doit être activée au niveau de la passerelle. Le concentrateur de connexions est activé lorsque la valeur du paramêtre de configuration MAX_CONNECTIONS est supérieure à la valeur du paramêtre MAX_COORDAGENTS. Si vous n'activez pas le concentrateur de connexions, un comportement de transaction inattendu peut se produire. Tables de conversion Unicode de remplacement pour l'ID de jeu de caractères codés (CCSID) 5039 La page de codes de Microsoft Windows en japonais avec codage SJIS est enregistrée en tant qu'ID de jeu de caractères codés (CCSID) IBM 943. En revanche, la page de codes avec codage SJIS sous une plateforme HP-UX est enregistrée en tant que CCSID 5039. CCSID 5039 ne contient que des caractères répondant à la norme JIS (Japanese Industry Standard) et aucun caractère défini par le fournisseur. Vous pouvez utiliser une base de données DB2 Universal Database (UDB) dotée du CCSID 5039 sous HP-UX pour stocker les caractères de codage SJIS, mais cela engendrera une conversion de la page de codes du format CCSID 5039 au format CCSID 943. Si vous utilisez des applications Microsoft ODBC, il se peut qu'un incident survienne lors de la conversion des données CCSID 5039 au format Unicode, en raison des différences entre la table de conversion des pages de codes d'IBM et celle de Microsoft. Lors de la conversion de la liste de caractères ci-dessous du format CCSID 5039 au format Unicode, vous obtiendrez des points de code qui varient en fonction de la table de conversion utilisée (IBM ou Microsoft). Pour ces caractères, la table de conversion d'IBM répond aux normes JIS JISX0208 et JISX0221. Tableau 2. Conversion des points de code CCSID 5039 au format Unicode +-----------------------+----------------------+----------------------+ | Point de code avec | Point de code | Point de code | | codage SJIS (nom de | primaire d'IBM (nom | primaire de | | caractère) | Unicode) | Microsoft (nom | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'815C' (tiret | U+2014 (tiret | U+2015 (barre | | cadratin) | cadratin) | horizontale) | +-----------------------+----------------------+----------------------+ | X'8160' (tilde) | U+301C (tilde) | U+FF5E (tilde pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ | X'8161' (double ligne | U+2016 (double ligne | U+2225 (parallèle à) | | verticale) | verticale) | | +-----------------------+----------------------+----------------------+ | X'817C' (signe moins) | U+2212 (signe moins) | U+FF0D (trait | | | | d'union pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ Par exemple, le tiret cadratin utilisé avec le point de code CCSID 5039 X'815C' est converti en point de code Unicode U+2014 si vous utilisez la table de conversion d'IBM et en U+2015 si vous utilisez celle de Microsoft. Cela peut engendrer des problèmes avec les applications Microsoft ODBC car celles-ci considéreront U+2014 comme un point de code non valide. Pour éviter ce type de problème, DB2 UDB fournit, en plus de la table de conversion par défaut d'IBM, la table de remplacement de Microsoft qui indique les conversions du format CCSID 5039 au format Unicode. Vous devez remplacer la table de conversion par défaut d'IBM par la table de conversion de remplacement de Microsoft. Notez que la table de conversion par défaut d'IBM indiquant les conversions du format Unicode au format CCSID 5039 est compatible avec la version de Microsoft. Remplacement des tables de conversion Unicode destinées au jeu de caractères codés (CCSID) 5039 par les tables de conversion de Microsoft Lorsque vous convertissez des données CCSID 5039 au format Unicode, le système utilise la table de conversion de la page de codes par défaut de DB2 Universal Database (UDB). Si vous souhaitez utiliser une autre version de table de conversion, celle de Microsoft par exemple, vous devez remplacer manuellement le fichier (.cnv) de table de conversion par défaut. Conditions préalables Avant de remplacer le fichier de table de conversion dans le répertoire sqllib/conv, il est recommandé d'enregistrer ce fichier au cas où vous voudriez le rétablir. Sous UNIX et Linux, le répertoire sqllib/conv pointe vers le chemin d'installation de DB2 UDB. Restrictions Pour que le remplacement des tables de conversion soit effectif, chaque client DB2 UDB se connectant à la même base de données doit changer de table de conversion, sinon les différents clients risquent d'enregistrer des points de code différents pour un même caractère. Procédure Pour remplacer la table de conversion par défaut de DB2 UDB, permettant de convertir les données CCSID 5039 au format Unicode, procédez comme suit : 1. Copiez sqllib/conv/ms/5039ucs2.cnv dans sqllib/conv/5039ucs2.cnv 2. Redémarrez DB2 UDB. Tables de conversion Unicode de remplacement pour l'ID de jeu de caractères codés (CCSID) 954 L'ID de jeu de caractères codés (CCSID) d'IBM pour la page de codes EUC en japonais est enregistré en tant que CCSID 954. CCSID 954 est un codage habituel pour les plateformes UNIX et Linux en japonais. Si vous utilisez des applications Microsoft ODBC pour vous connecter à une base de données DB2 Universal Database (UDB) dotée du CCSID 954, il se peut que vous rencontriez un problème lors de la conversion des données CCSID 954 au format Unicode. en raison des différences entre la table de conversion des pages de codes d'IBM et celle de Microsoft. La table de conversion d'IBM respecte les noms de caractères spécifiés par les normes (JIS) JISX0208, JISX0212 et JISX0221. Lors de la conversion des caractères ci-dessous du format CCSID 954 au format Unicode, vous obtiendrez des points de code qui varient en fonction de la table de conversion utilisée (IBM ou Microsoft). Tableau 3. Conversion des points de code CCSID 954 au format Unicode +-----------------------+----------------------+----------------------+ | Point de code EUC-JP | Point de code | Point de code | | (nom de caractère) | primaire d'IBM (nom | primaire de | | | Unicode) | Microsoft (nom | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'A1BD' (tiret | U+2014 (tiret | U+2015 (barre | | cadratin) | cadratin) | horizontale) | +-----------------------+----------------------+----------------------+ | X'A1C1' (tilde) | U+301C (tilde) | U+FF5E (tilde pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ | X'A1C2' (double ligne | U+2016 (double ligne | U+2225 (parallèle à) | | verticale) | verticale) | | +-----------------------+----------------------+----------------------+ | X'A1DD' (signe moins) | U+2212 (signe moins) | U+FF0D (trait | | | | d'union pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ | X'8FA2C3' (tirets | U+00A6 (tirets | U+FFE4 (tirets | | verticaux) | verticaux) | verticaux pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ Par exemple, le tiret cadratin utilisé avec le point de code CCSID 954 X'A1BD' est converti en point de code Unicode U+2014 si vous utilisez la table de conversion d'IBM et en U+2015 si vous utilisez celle de Microsoft. A cause de cette différence de mappage des conversions, vous risquez d'avoir deux points de code différents pour un même caractère dans une base de données DB2 UDB Unicode ou dans une colonne graphique d'une base de données DB2 UDB 954. Cela peut engendrer des problèmes avec les applications Microsoft ODBC car celles-ci considéreront U+2014 comme un point de code non valide. Pour éviter ce type de problème, DB2 UDB fournit, en plus de la table de conversion par défaut d'IBM, la table de remplacement de Microsoft qui indique les conversions du format CCSID 954 au format Unicode. Vous devez remplacer la table de conversion par défaut d'IBM par la table de conversion de remplacement de Microsoft. Notez que la table de conversion par défaut d'IBM, indiquant les conversions du format Unicode au format CCSID 954, est compatible avec la version de Microsoft. Remplacement des tables de conversion Unicode destinées au jeu de caractères codés (CCSID) 954 par les tables de conversion de Microsoft Lorsque vous convertissez des données CCSID 954 au format Unicode, le système utilise la table de conversion de la page de codes par défaut de DB2 Universal Database (UDB). Si vous souhaitez utiliser une autre version de table de conversion, celle de Microsoft par exemple, vous devez remplacer manuellement le fichier (.cnv) de table de conversion par défaut. Conditions préalables Avant de remplacer le fichier de table de conversion dans le répertoire sqllib/conv, il est recommandé d'enregistrer ce fichier au cas où vous voudriez le rétablir. Sous UNIX et Linux, le répertoire sqllib/conv est lié au chemin d'installation de DB2 UDB. Restrictions Pour que le remplacement soit effectif, chaque client DB2 UDB qui se connecte à une même base de données CCSID 954 doit changer de table de conversion. Si votre client est Windows en japonais, avec une page de codes ANSI au codage SJIS (CCSID 943), vous devrez également remplacer les tables de conversion CCSID 943/Unicode par défaut de DB2 par la version de Microsoft. sinon les différents clients risquent d'enregistrer des points de code différents pour un même caractère. Procédure Pour remplacer la table de conversion par défaut de DB2 UDB, permettant de convertir les données CCSID 954 au format Unicode, procédez comme suit : 1. Copiez sqllib/conv/ms/0954ucs2.cnv dans sqllib/conv/0954ucs2.cnv 2. Redémarrez DB2 UDB. Pour remplacer les tables de conversion par défaut de DB2 UDB, permettant de convertir les données CCSID 943 au format Unicode, procédez comme suit : 1. Copiez sqllib/conv/ms/0943ucs2.cnv dans sqllib/conv/0943ucs2.cnv 2. Copiez sqllib/conv/ms/ucs20943.cnv dans sqllib/conv/ucs20943.cnv 3. Redémarrez DB2 UDB. Tables de conversion Unicode de remplacement pour l'ID de jeu de caractères codés (CCSID) 943 Lorsque vous utilisez la page de codes de Microsoft Windows en japonais avec codage SJIS, qui est enregistrée en tant qu'ID de jeu de caractères codés (CCSID) IBM 943, il se peut que vous rencontriez les deux problèmes suivants lors de la conversion des caractères du format CCSID 943 au format Unicode. Cette éventualité est due aux différences entre la table de conversion des pages de codes IBM et celle de Microsoft. Afin d'éviter ce type d'incident, DB2 Universal Database (UDB) fournit, outre les tables de conversion par défaut d'IBM, les tables de remplacement de Microsoft pour les conversions du format CCSID 943 au format Unicode. problème 1 Pour des raisons d'historique, environ 300 caractères sont représentés par deux ou trois points de code chacun dans la page de codes CCSID 943. Avec l'utilisation des éditeurs de méthode d'entrée(IMEs) et de tables de conversion de page de codes, un seul de ces points de code équivalents peut être entré. Par exemple, le caractère correspondant au chiffre romain "un" en lettre minuscule'i' a deux points de code équivalents : X'EEEF' et X'FA40'. Les IME Microsoft Windows génèrent toujours X'FA40' lorsque 'i' est entré. En général, IBM et Microsoft utilisent le même point de code primaire pour représenter un caractère, à l'exception des 13 caractères suivants : Tableau 4. Conversion des points de code CCSID 943 +-----------------------+----------------------+----------------------+ | Nom de caractère | Point de code | Point de code | | (point de code | primaire Shift-JIS | primaire Shift-JIS | | Unicode) | IBM | Microsoft | +-----------------------+----------------------+----------------------+ | Chiffre romain "un" | X'FA4A' | X'8754' | | (U+2160) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "deux" | X'FA4B' | X'8755' | | (U+2161) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain | X'FA4C' | X'8756' | | "trois" (U+2162) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain | X'FA4D' | X'8757' | | "quatre" (U+2163) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "cinq" | X'FA4E' | X'8758' | | (U+2164) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "six" | X'FA4F' | X'8759' | | (U+2165) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "sept" | X'FA50' | X'875A' | | (U+2166) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "huit" | X'FA51' | X'875B' | | (U+2167) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "neuf" | X'FA52' | X'875C' | | (U+2168) | | | +-----------------------+----------------------+----------------------+ | Chiffre romain "dix" | X'FA53' | X'875D' | | (U+2169) | | | +-----------------------+----------------------+----------------------+ | Stock d'idéogrammes | X'FA58' | X'FA58' | | entre parenthèses | | | | (U+3231) | | | +-----------------------+----------------------+----------------------+ | Signe de numéro | X'FA59' | X'8782' | | (U+2116) | | | +-----------------------+----------------------+----------------------+ | Signe de téléphone | X'FA5A' | X'8754' | | (U+2121) | | | +-----------------------+----------------------+----------------------+ Les produits IBM comme DB2 UDB utilisent principalement des points de code IBM tels X'FA4A' pour représenter le chiffre romain 'I', mais les produits Microsoft utilisent X'8754' pour représenter ce même caractère. Avec une application Microsoft ODBC, il est possible d'insérer le caractère 'I' sous la forme X'8754' dans une base de données DB2 UDB CCSID 943. Le Centre de contrôle DB2 UDB permet d'insérer le même caractère sous la forme X'FA4A' dans la même base de données CCSID 943. Toutefois, les applications ODBC ne peuvent rechercher que les lignes contenant 'I' codé sous la forme X'8754', et le Centre de contrôle DB2 UDB ne peut localiser que les lignes contenant 'I' codé sous la forme X'FA4A'. Pour que le Centre de contrôle DB2 UDB puisse sélectionner 'I' sous la forme X'8754', vous devez remplacer les tables de conversion par défaut CCSID 943/Unicode d'IBM par les tables de remplacement de Microsoft. problème 2 Lors de la conversion de la liste de caractères ci-dessous du format CCSID 943 au format Unicode, vous obtiendrez des points de code qui varient en fonction de la table de conversion utilisée (IBM ou or the Microsoft). Pour ces caractères, la table de conversion IBM répond aux normes JIS (Japanese Industry Standard) JISX0208, JISX0212 et JISX0221. Tableau 5. Conversion des points de code CCSID 943 au format Unicode +-----------------------+----------------------+----------------------+ | Point de code avec | Point de code | Point de code | | codage SJIS (nom de | primaire d'IBM (nom | primaire de | | caractère) | Unicode) | Microsoft (nom | | | | Unicode) | +-----------------------+----------------------+----------------------+ | X'815C' (tiret | U+2014 (tiret | U+2015 (barre | | cadratin) | cadratin) | horizontale) | +-----------------------+----------------------+----------------------+ | X'8160' (tilde) | U+301C (tilde) | U+FF5E (tilde pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ | X'8161' (double ligne | U+2016 (double ligne | U+2225 (parallèle à) | | verticale) | verticale) | | +-----------------------+----------------------+----------------------+ | X'817C' (signe moins) | U+2212 (signe moins) | U+FF0D (trait | | | | d'union pleine | | | | largeur) | +-----------------------+----------------------+----------------------+ | X'FA55' (barre | U+00A6 (tirets | U+FFE4 (tirets | | verticale | verticaux) | verticaux pleine | | interrompue) | | largeur) | +-----------------------+----------------------+----------------------+ Par exemple, le tiret cadratin utilisé avec le point de code CCSID 943 X'815C' est converti en point de code Unicode U+2014 si vous utilisez la table de conversion d'IBM. Cependant, il est converti en U+2015 si vous utilisez la table de conversion Microsoft. A cause de cette différence de mappage des conversions, vous risquez d'avoir deux points de code différents pour un même caractère dans une base de données DB2 UDB Unicode. Cela peut engendrer des problèmes avec les applications Microsoft ODBC car celles-ci considéreront U+2014 comme un point de code non valide. Pour éviter ce type de problème, remplacez les tables de conversion par défaut CCSID 943/Unicode d'IBM par les tables de remplacement de Microsoft. L'utilisation de tables de remplacement de Microsoft pour la conversion CCSID 943/Unicode devrait être limitée aux environnements fermés, où les clients et les bases de données DB2 UDB ont tous une page de codes CCSID 943 et utilisent les mêmes tables de remplacement Microsoft. Si un client DB2 UDB utilise les tables de conversion par défaut d'IBM tandis qu'un autre client DB2 UDB utilise les tables de remplacement de Microsoft et que les deux clients insèrent des données dans la même base de données DB2 UDB dotée du CCSID 943, le même caractère pourra être enregistré sous forme de différents points de codes dans la base de données. Remplacement des tables de conversion Unicode destinées au jeu de caractères codés (CCSID) 943 par les tables de conversion de Microsoft Lors de la conversion des données CCSID 943 au format Unicode, le système utilise les tables de conversion de la page de codes par défaut de DB2 Universal Database (UDB). Si vous souhaitez utiliser une autre version des tables de conversion, celle de Microsoft par exemple, vous devez remplacer manuellement les fichiers (.cnv) de la table de conversion par défaut. Conditions préalables Avant de remplacer les fichiers de tables de conversion dans le répertoire sqllib/conv, il est recommandé d'enregistrer ces fichiers au cas où vous voudriez les rétablir. Sous UNIX et Linux, le répertoire sqllib/conv pointe vers le chemin d'installation de DB2 UDB. Restrictions Pour que le remplacement des tables de conversion soit effectif, chaque client DB2 UDB se connectant à la même base de données doit changer de table de conversion, sinon ils risquent d'enregistrer différents points de code pour un même caractère. Procédure Pour remplacer les tables de conversion par défaut de DB2 UDB, permettant de convertir les données CCSID 943 au format Unicode, procédez comme suit : 1. Copiez sqllib/conv/ms/0943ucs2.cnv dans sqllib/conv/0943ucs2.cnv. 2. Copiez sqllib/conv/ms/ucs20943.cnv dans sqllib/conv/ucs20943.cnv. 3. Redémarrez DB2 UDB. MVS non pris en charge Contrairement à ce qui est indiqué dans la documentation, le système d'exploitation MVS n'est plus pris en charge par DB2 Universal Database. MVS a été remplacé par z/OS. Sauvegarde et restauration (Linux 390) Les opérations de sauvegarde et de restauration vers et à partir de plusieurs unités de bande risquent de ne pas fonctionner si vous utilisez le système d'exploitation Linux 390. Activation du basculement de la vue lors de l'accès au Centre de développement à l'aide de Hummingbird Exceed Lorsque vous accédez au Centre de développement sous UNIX à l'aide de Hummingbird Exceed, vous devez activer l'extension XTEST version 2.2 pour pouvoir, déplacer et faire basculer les vues dans le Centre de développement en déplaçant leurs barres de titre. Pour activer l'extension XTEST, procédez comme suit : 1. Dans le menu Démarrer, sélectionnez Programmes -> Hummingbird Connectivity 7.0 ->Exceed ->XConfig. La fenêtre XConfig s'affiche. 2. Facultatif : si votre configuration requiert un mot de passe, entrez le mot de passe XConfig. 3. Cliquez deux fois sur l'icône Protocole. La fenêtre Protocole s'affiche. 4. Cochez la case de compatibilité avec le test de conformité X. 5. Dans la fenêtre Protocole, cliquez sur le bouton Extensions.... La fenêtre Extensions de protocole s'affiche. 6. Dans la liste d'activation des extensions, cochez la case XTEST(X11R6). 7. Cliquez sur OK. Informations sur l'installation, la migration, la mise à niveau et la configuration Les marques de révision signalent le texte qui a été ajouté ou modifié. Une barre verticale ( | ) indique des informations ajoutées ou modifiées pour la version 8.2, FixPak 4 (équivalente de la version 8.1, FixPak 11). Configurations matérielle et logicielle requises Les configurations matérielle et logicielle requises peuvent être consultées sur le site Web suivant : http://www.ibm.com/software/data/db2/udb/sysreqs.html Remarques relatives à l'installation Sur les plateformes UNIX et Linux, ces remarques concernent uniquement l'installation de nouveaux produits. Pour appliquer un FixPack, consultez le fichier Readme relatif à ce FixPack. Sur les plateformes Windows, ces remarques s'appliquent à l'installation de nouveaux produits et à la mise en oeuvre des FixPacks. Lors de la mise en oeuvre d'un FixPack, ces remarques doivent être prises en compte conjointement avec le fichier Readme du FixPack. Lisez l'intégralité de cette section avant d'installer DB2 Universal Database. Nouvelles options pour l'assistant de configuration DB2 (Windows) Indication du chemin d'installation sur la ligne de commande L'assistant de configuration DB2 autorise l'indication du chemin d'installation sur la ligne de commande à l'aide de la nouvelle commande : -p Répertoire d'installation Cette option se substitue à toute valeur indiquée dans le fichier de réponses. La nouvelle option -p [REPINSTALL] permet de modifier le chemin d'installation du produit sans modifier le fichier de réponses. Nouvelle option d'installation NO_CONFIG Le mot clé NO_CONFIG, ajouté au fichier de réponses, désactive toute opération en cours d'exécution. Toutefois, l'installation définit les variables d'environnement et effectue d'autres opérations de configuration de base requises pour la création des instances et pour la création manuelle du serveur d'administration DB2 une fois l'installation terminée. Aucune opération de configuration non essentielle n'est effectuée. Si cette option est indiquée dans le fichier de réponses, tous les mots clés utilisés lors de la configuration active sont validés, mais la configuration associée à ces mots clés n'est pas effectuée. Affichage de la progression Une nouvelle option permet d'afficher uniquement la fenêtre de progression de l'assistant de configuration DB2 lors de l'exécution d'une installation automatisée. La nouvelle option -m doit être utilisée conjointement avec le paramêtre -u [fichier de réponses]. Si l'option -m est indiquée sans l'option du fichier de réponses, l'installation renvoie un message indiquant que l'argument est incorrect. Si l'option -m est indiquée, seules les fenêtres ne requérant aucune saisie utilisateur sont affichées. Par exemple, dès que la commande setup.exe est exécutée, l'installation affiche des fenêtres mais n'invite à aucune saisie. Lorsque l'installation se termine, les fenêtres se ferment et le processus setup.exe se termine. Modifications apportées à l'assistant de configuration DB2 (Windows) Options de l'assistant de configuration DB2 (setup.exe) Le fichier setup.exe qui lance l'installation DB2 attend désormais que l'installation soit terminée avant de renvoyer toute information. Il s'agit du comportement par défaut. Une option -w existe ; toutefois, ce paramêtre ne modifie plus le comportement de l'assistant de configuration DB2. Vous pouvez utiliser la nouvelle option -c pour forcer l'assistant de configuration DB2 à quitter immédiatement après le lancement de l'installation. Si vous sélectionnez cette option, la surveillance du code retour du fichier setup.exe ne rend pas disponible le code retour de l'installation. Une erreur est renvoyée si les options -w et -c sont indiquées ensemble. Restrictions de l'installation de la sécurité étendue (Windows) La version 8.2 de DB2 Universal Database (UDB) a intégré une nouvelle fonction qui sécurise l'accès aux ressources DB2 en exploitant les fonctions de sécurité du système de fichiers NTFS et celles du système d'exploitation Windows. La sécurisation des accès est réalisée principalement par modification des listes de contrôle d'accès (ACL) des fichiers DB2, des entrées de registre et des objets de mémoire d'exécution. Par défaut, l'assistant d'installation DB2 active cette nouvelle fonction de sécurité. La sécurité étendue Windows peut être désactivée par l'exécution d'une installation personnalisée et par désactivation de la case Enhanced Windows security (Sécurité Windows renforcée) dans la fenêtre Enable operating system security for DB2 objects (Activer la sécurité du système d'exploitation pour les objets DB2). La seule méthode recommandée pour désactiver la nouvelle fonction de sécurité consiste à exécuter la commande db2secv82. Toutefois, la commande db2secv82 doit être exécutée immédiatement après l'installation. Des informations complémentaires sur la commande db2secv82 sont disponibles dans le Centre de documentation DB2 à l'adresse suivante : http://publib.boulder.ibm.com/infocenter/db2help/. Vous pouvez installer DB2 UDB avec un ID utilisateur mais celui-ci ne pourra exécuter aucune commande DB2 s'il n'appartient pas au groupe DB2ADMNS, DB2USERS ou Administrateurs locaux. Seuls les utilisateurs appartenant au groupe DB2ADMNS, DB2USERS ou Administrateurs locaux ont accès aux systèmes de fichiers DB2, aux clés de registre, aux partages de réseau et aux services DB2 sur l'ordinateur local sur lequel s'exécute DB2 UDB. En général, les utilisateurs qui appartiennent aux groupes DB2ADMNS et Administrateurs locaux disposent d'un contrôle intégral sur les ressources DB2. Les utilisateurs qui appartiennent au groupe DB2USERS disposent de droits d'accès en écriture et en exécution. après installation de la version 8.2 de DB2 UDB, les utilisateurs qui ont besoin des droits d'accès en lecture (pour exécuter des requêtes, par exemple) doivent être ajoutés aux groupes DB2USERS. Les utilisateurs ayant besoin d'un accès avec contrôle intégral, tels que les administrateurs de base de données, doivent être ajoutés aux groupes DB2ADMNS. La gestion des utilisateurs doit être effectuée en accord avec les règles de sécurité en vigueur dans votre environnement. Effets des nouvelles mesures de sécurité sur une installation normale Lors d'une installation normale de DB2 UDB sous Windows, la fonction de sécurité étendue est activée par défaut. Par défaut, DB2 UDB crée les groupes DB2ADMNS et DB2USERS. S'il existe un conflit entre des noms de groupe existants, vous serez invité à modifier les noms de groupe. Si nécessaire, vous pouvez spécifier les valeurs de votre choix. Si vous choisissez d'utiliser un groupe de sécurité existant, les règles de sécurité de ce groupe seront modifiées afin de satisfaire aux exigences de DB2 UDB. Lorsque vous choisissez un groupe de sécurité existant, il se peut que vous éleviez les privilèges des utilisateurs si ceux-ci existent déjà dans le groupe. Effets des nouvelles mesures de sécurité sur une installation personnalisée ou de FixPak Lors d'une installation personnalisée ou de FixPak de DB2 UDB sous Windows, la fenêtre Enable operating system security for DB2 objects s'ouvre. Si vous souhaitez activer la fonction de sécurité étendue Windows, vous pouvez accepter l'option par défaut en cliquant sur Suivant. Si vous souhaitez désactiver la fonction de sécurité étendue Windows, vous pouvez décocher la case Enable operating system security dans la fenêtre Enable operating system security for DB2 objects. Ajout d'ID utilisateur pour l'accès à DB2 UDB après installation après une installation normale ou personnalisée, vous devez ajouter vos ID utilisateur aux groupes DB2ADMNS et DB2USERS appropriés afin qu'ils puissent accéder à DB2 UDB. Pour ajouter des utilisateurs au groupe approprié : 1. Lancez l'outil Gestionnaire des utilisateurs et des mots de passe. 2. Sélectionnez, dans la liste, le nom d'utilisateur que vous souhaitez ajouter. 3. Cliquez sur Propriétés. Dans la fenêtre Propriétés, cliquez sur l'onglet Appartenance au groupe. 4. Sélectionnez le bouton d'option Autre. 5. Sélectionnez le groupe approprié dans la liste déroulante. Activation de la sécurité Windows étendue après installation Si vous avez installé DB2 UDB et choisi de ne pas activer la nouvelle fonction de sécurité, vous pouvez toujours le faire après installation en exécutant la commande db2secv82.exe. Une fois que vous avez activé cette fonction de sécurité à l'aide de la commande db2secv82.exe, vous disposez de deux options pour revenir en arrière : Option 1 Exécutez immédiatement une nouvelle fois la commande db2secv82.exe -r sans apporter d'autres modifications au système. Si vous avez effectué des modifications sur le système, vous devez utiliser l'option 2. Option 2 Ajoutez le groupe Tout le monde aux groupes DB2ADMNS et DB2USERS. L'ajout du groupe Tout le monde à ces groupes de sécurité octroie à tous les utilisateurs tous les privilèges pour utiliser DB2 UDB. Il n'est toutefois pas recommandé que vous désactiviez la sécurité ; vous pourriez créer des situations non souhaitées portant atteinte à la sécurité. Certains utilisateurs pourraient se retrouver dans l'incapacité d'utiliser DB2 UDB, la liste de contrôle d'accès (ACL) créée par DB2 UDB à l'exécution ne correspondant plus à celle appliquée au système de fichiers. Le chemin d'accès au répertoire ne doit comporter aucun espace (Linux et UNIX) si le programme db2setup est exécuté à partir d'un répertoire dont le chemin d'accès comporte un espace, la configuration échoue avec l'erreur suivante : : introuvable Placez l'image installable dans un répertoire dont le chemin d'accès ne comporte pas d'espace. Condition requise par Red Hat Enterprise Linux 4 Le package compat-libstdc++-33 doit être installé avant l'installation de DB2 Universal Database pour Linux sous Red Hat Enterprise Linux 4. Niveaux JDK pour DB2 UDB (Linux on IA64 et Linux on POWER) Lorsque vous installez la version 8.2 de DB2 Universal Database (UDB) sous Linux, l'installation basée RPM tente d'installer le RPM IBM Java (IBMJava2-SDK-ppc-1.4.1-2.0.ppc.rpm). Si un niveau supérieur du RPM (tel qu'IBMJava2-SDK-ppc-1.5.0-2.0.ppc.rpm) existe déjà, le RPM de niveau inférieur n'est pas installé. Cependant, dans ce cas, le paramêtre de configuration de base de données JDK_PATH continue de pointer vers le chemin d'accès de Java 1.4 (/opt/IBMJava2-14/) lors de l'installation. Par conséquent, aucune fonctionnalité dépendante de Java, y compris l'installation du catalogue des outils DB2, ne s'exécutera. Condition préalable Vous devez exécuter la commande ci-après en tant que propriétaire d'instance . Procédure 1. Pour que DB2 UDB pointe sur le kit de développement IBM qui convient, exécutez la commande suivante : db2 update dbm cfg using JDK_PATH chemin où chemin est le chemin d'installation 1.5, tel que /opt/IBMJava2-15. Décompression des images d'installation (Linux et UNIX) Certaines images d'installation sont fournies dans un format compressé ou zippé, sur le CD du produit. Pour pouvoir installer DB2 Universal Database (UDB) à partir de ces formats, vous devez copier l'image d'installation dans un répertoire temporaire et la décompresser ou la dézipper. Le nom du fichier des images d'installation compressées ou zippées sur le CD-ROM, est PRODUIT.tar.Z ou PRODUIT.tar.gz, où PRODUIT est le produit DB2 que vous installez. Par exemple, si vous installez DB2 UDB Enterprise Server Edition, l'image compressée, située sur le CD-ROM du produit, pourra s'appeler ese.tar.Z ou ese.tar.gz. En plus de l'espace disque requis pour le logiciel, votre système de fichiers doit disposer de 2 Go d'espace libre pour accueillir le fichier tar.Z ou tar.gz et l'image d'installation décompressée. Procédure Pour décompresser les images d'installation, procédez comme suit : 1. Copiez l'image d'installation compressée ou zippée dans un système de fichiers temporaire disposant d'au moins 2 Go d'espace libre. 2. Modifiez le répertoire dans lequel vous avez copié l'image d'installation en entrant cd /TMP, où /TMP représente ce répertoire dans lequel vous avez copié l'image d'installation. 3. Si le produit porte l'extension *.tar.Z, entrez la commande ci-après pour décompresser l'image d'installation. zcat PRODUIT.tar.Z | tar -xvf - où PRODUIT est le produit DB2 que vous installez. 4. Si le produit porte l'extension *.tar.gz, entrez la commande ci-après pour décompresser l'image d'installation. gunzip -c PRODUIT.tar.gz | tar -xvf - où PRODUIT est le produit DB2 que vous installez. Remarques : a. L'utilitaire gunzip fait partie de la configuration d'installation par défaut AIX 5L. Si vous ne disposez pas de gunzip, installez l'ensemble de fichiers rpm.rte à partir du support d'installation AIX 5L. L'ensemble de fichiers rpm.rte contient gunzip. b. Vous pouvez également télécharger gzip pour AIX 5L, contenant gunzip, à partir de http://www.ibm.com/servers/aix/products/aixos/linux/rpmgroups.html. 5. Pour effectuer l'installation à l'aide de l'assistant d'installation DB2, reportez-vous à la section Installation de DB2 UDB à partir des images d'installation (Linux et UNIX). DB2 UDB n'admet pas de chemin d'installation autre qu'anglais (Windows) Au cours de l'installation de DB2 Universal Database (UDB) sous Windows, vous pouvez entrer le chemin d'accès au répertoire de DB2 UDB. Cependant, le nom de ce chemin ne peut contenir que des caractères anglais. Téléchargement et décompression de FixPacks pour différents produits (Windows) A compter du FixPack 3 de DB2 version 8 pour Windows, IBM fournit des FixPacks spécifiques à chaque produit, au lieu d'un FixPack global. Ceci concerne uniquement les produits DB2 version 8 sous Windows. Si vous avez installé plusieurs produits DB2, vous devrez télécharger puis décompresser une image pour chaque produit DB2 avant de procéder à l'installation. Par exemple, si DB2 UDB Enterprise Server Edition version 8 et DB2 Spatial Extender version 8 sont installés sur le même système Windows, vous devez télécharger l'image du FixPack de DB2 UDB Enterprise Server Edition et celle du FixPack de DB2 Spatial Extender. Vous devez ensuite décompresser chacune de ces images de FixPak dans le même répertoire. Il est nécessaire de décompacter toutes les images afin de procéder à l'installation via l'interface graphique ou en mode silencieux. Pour obtenir des instructions d'installation complètes des FixPacks, consultez le dernier fichier Readme du FixPack DB2 UDB. Installation de DB2 UDB à partir des images d'installation (Linux et UNIX) Conditions préalables Avant de lancer l'assistant de configuration DB2 : * Assurez-vous que votre système répond aux critères requis en matière d'installation, de mémoire et d'espace disque. Pour ce faire, reportez-vous à la section Configurations matérielle et logicielle requises. Remarque : La version 8.2.2 de DB2 UDB (équivalente de la version 8.1, FixPack 9) intègre un nouvel ensemble d'images d'installation pour les distributions Linux sur les architectures x86 (Intel et AMD 32 bits) et x86-64 (Intel EM64T et AMD64 64 bits) basées sur le noyau 2.6, telles que Red Hat Enterprise Linux 4 et SuSE Linux Enterprise Server 9. Assurez-vous que vous disposez de l'ensemble d'images d'installation qui convient pour votre distribution Linux avant de continuer l'installation. * Prenez connaissance des conditions requises pour l'installation. Pour cela, lisez le fichier install.txt ou install.htm situé sur le CD-ROM, sous : /cdrom/doc/langue/ où : * cdrom représente le point de montage du CD-ROM * langue correspond au répertoire de la langue, constitué d'un code à cinq caractères. * Vous devez disposer des droits d'utilisateur root pour effectuer l'installation. * Le CD-ROM du produit DB2 doit être monté sur votre système. Procédure Si les images d'installation sont fournies sous un format compressé ou zippé, sur le CD du produit, vous devez les décompresser ou les dézipper avant d'installer DB2 UDB. Pour plus de détails, reportez-vous à la section Décompression des images d'installation (Linux et UNIX). Pour effectuer l'installation à l'aide de l'assistant d'installation DB2, entrez la commande suivante : ./PRODUIT/db2setup où PRODUIT est le produit DB2 que vous êtes en train d'installer. Par exemple, si vous installez DB2 UDB Enterprise Server Edition, entrez ./ese/db2setup. La fenêtre d'installation s'ouvre. Suivez les instructions des panneaux d'installation. Installation de DB2 UDB à partir des images d'installation (Windows) Conditions préalables Avant de lancer l'assistant de configuration DB2 : * Assurez-vous que votre système répond aux critères requis en matière d'installation, de mémoire et d'espace disque. Pour ce faire, reportez-vous à la section Configurations matérielle et logicielle requises. * Prenez connaissance des conditions requises pour l'installation. Pour cela, lisez le fichier install.txt ou install.htm situé sur le CD-ROM, sous : x:\doc\langue\ où: * x représente l'unité de CD-ROM * langue correspond au répertoire de la langue, constitué d'un code à cinq caractères. * Vous devez disposer d'un compte utilisateur d'administrateur local avec des droits d'accès recommandés pour effectuer l'installation. Pour effectuer l'installation à l'aide de l'assistant d'installation DB2, insérez le CD-ROM dans l'unité. Si elle est activée, la fonction d'exécution automatique lance le Tableau de bord d'installation de DB2. Procédure Si la fonction d'exécution automatique n'est pas activée, vous pouvez lancer l'assistant d'installation DB2 manuellement : 1. Cliquez sur Démarrer, puis sélectionnez l'option Exécuter. 2. Dans la zone Ouvrir, entrez la commande suivante : x:\setup /i langue où : * x: représente l'unité de CD-ROM * langue représente le code pays correspondant à votre langue (par exemple, FR pour le français). La paramêtre /i langue est facultatif. S'il n'est pas spécifié, l'assistant d'installation DB2 s'exécute dans la langue de votre système d'exploitation. 3. Cliquez sur OK. Le Tableau de bord d'installation de DB2 s'affiche. Suivez les instructions des panneaux d'installation. Remarque : Le produit DB2 Run-Time Client Lite utilise d'autres paramêtres de ligne de commande. Pour plus de détails, accédez au Centre de documentation DB2 à l'adresse suivante : http://publib.boulder.ibm.com/infocenter/db2help/. Espace disque requis pour une installation de DB2 UDB à l'aide d'un fichier réponses Pour installer un produit DB2 Universal Database au moyen d'un fichier réponses, vous devez disposer de 1 Mo d'espace disque libre sous le répertoire etc. Si, au cours de l'installation au moyen d'un fichier réponses, le message d'erreur DBI1191I apparaît, cela signifie qu'il n'y a pas suffisamment d'espace disque disponible dans le répertoire racine. Ce message est trompeur. Vérifiez l'espace disque disponible dans le répertoire etc. Un espace disque disponible de 1 Mo minimum est nécessaire pour relancer l'installation. Restrictions sur l'ajout de produits via la commande db2setup (Linux et UNIX) Une fois le produit DB2 installé, il est possible d'installer des produits DB2 supplémentaires. Si vous utilisez la commande db2setup pour ajouter des produits, les recommandations et restrictions ci-après sont applicables. Recommandations Le produit installé et celui ajouté doivent être au même niveau de code. Par exemple, DB2 Universal Database (UDB) Enterprise Server Edition Server Version 8 FixPack 5 est déjà installé et vous voulez ajouter le produit DB2 Information Integrator. Dans ce cas, DB2 Information Integrator doit également être au niveau Version 8 FixPack 5. Restrictions * Si le niveau de FixPack DB2 est supérieur à celui du produit ajouté, la combinaison est autorisée. Cependant, le niveau de FixPack du produit ajouté étant inférieur à celui de DB2, le niveau de FixPack de DB2 doit être réappliqué après l'installation du produit supplémentaire. Voir le fichier README approprié pour obtenir des instructions concernant la réapplication du FixPack. * Si le niveau de FixPack de DB2 est inférieur à celui du produit ajouté, une erreur est générée. Le niveau de FixPack du produit ajouté ne doit pas être supérieur à celui de DB2 UDB. Dans le cas contraire, vous devez d'abord mettre DB2 UDB au niveau approprié, puis installer le produit supplémentaire. Voir le fichier README concernant le FixPack approprié pour obtenir des instructions. Le tableau ci-après résume les combinaisons db2setup : Tableau 6. combinaisons db2setup +----------+--------------+-------------------------------------------+ | Niveau | Niveau de | Cette combinaison est-elle autorisée ? | | de | FixPack du | | | FixPack | produit | | | de DB2 | supplémentai | | | | re | | +----------+--------------+-------------------------------------------+ | Version | Version 8 | Oui. Ce niveau est recommandé. | | 8 FixPak | FixPak 3 | | | 3 | | | +----------+--------------+-------------------------------------------+ | Version | Version 8 GA | Oui, mais la Version 8 FixPack 3 doit | | 8 FixPak | | être réappliquée. Voir le fichier README | | 3 | | approprié pour obtenir des instructions | | | | concernant la réapplication du FixPack en | | | | visitant le site Web DB2 Support. | +----------+--------------+-------------------------------------------+ | Version | Version 8 | Non. DB2 doit d'abord passer au niveau de | | 8 FixPak | FixPak 5 | FixPack le plus élevé (dans cet exemple, | | 3 | | Version 8 FixPak 5) avant l'installation | | | | du produit supplémentaire. Sur le site | | | | Web DB2 Support, consultez le fichier | | | | README concernant le FixPack approprié | | | | pour obtenir des instructions sur | | | | l'installation du FixPack de version 8 | | | | requis. | +----------+--------------+-------------------------------------------+ L'adresse du site Web DB2 Support est http://www.ibm.com/software/data/db2/udb/support.html Utilitaires Web de DB2 Les serveurs d'applications pris en charge par les Utilitaires Web DB2 doivent être conformes aux spécifications Servlet 2.3 pour les langues suivantes : * Japonais * Coréen * Chinois simplifié * Chinois traditionnel * Russe * Polonais Définition des accès aux modules Query Patroller après l'application des FixPacks Si Query Patroller est installé, après avoir appliqué un FixPack et réalisé toutes les tâches d'installation post-fixpack nécessaires, suivez les étapes suivantes : 1. Connectez-vous en tant qu'utilisateur doté du droit DBADM. 2. Accédez au répertoire approprié : * CHEMININST/bnd (Linux et UNIX) * CHEMININST\bnd (Windows) où CHEMININST est le chemin de l'instance DB2 UDB. 3. Exécutez les commandes suivantes : db2 connect to nombd db2 bind @qpserver.lst blocking all grant public Installation de Query Patroller au niveau de FixPack 3 ou suivant Query Patroller est un système de gestion de requêtes utilisé pour contrôler le flux de requêtes de votre base de données DB2 UDB. Dans DB2 UDB version 8.1.2, DB2 Query Patroller est devenu un produit autonome. Il ne s'agit plus d'un composant de DB2 Warehouse Manager. Si DB2 UDB Version 8 FixPak 3 ou suivant est installé, et que vous installez la version de base ou GA de DB2 Query Patroller, vous devez réappliquer DB2 UDB FixPak 3 ou suivant. Si vous ne le faites pas, les modifications de Query Patroller ne seront pas appliquées au niveau de FixPak DB2 UDB actuel. Si vous installez le serveur Query Patroller, vous devez également mettre à jour les instances DB2 UDB après avoir réappliqué le niveau de FixPack DB2 UDB. Les instances doivent être redémarrées une fois mises à jour. Installation du serveur Query Patroller Lorsque vous installez le serveur Query Patroller, veuillez noter ce qui suit : * Si vous sélectionnez Basé sur l'utilisation de l'ordinateur dans la fenêtre Sélection du type d'installation via l'Assistant d'installation DB2, et Serveur dans la fenêtre Sélectionnez le type d'utilisation de cet ordinateur, le Centre Query Patroller ne sera pas installé. Si vous voulez installer le Centre Query Patroller, sélectionnez le type d'installation Complète ou Sélective dans la fenêtre Sélection du type d'installation. * Le manuel DB2 Query Patroller utilise les panneaux d'installation du type d'installation basé sur l'utilisation de l'ordinateur pour illustrer le mode d'installation du serveur Query Patroller via l'assistant d'installation DB2. Il n'est pas indispensable d'utiliser ce type d'installation pour installer le serveur Query Patroller. Vous pouvez également utiliser les types d'installation complète ou sélective. * Les clients DB2 qui ont installé les outils du client Query Patroller, doivent se connecter à une partition sur laquelle le serveur Query Patroller est installé. Dans un environnement de bases de données partitionnées classique, le serveur Query Patroller est installé sur toutes les partitions, vous pouvez ainsi sélectionner une partition pour qu'elle soit la partition de coordination et continuer à utiliser les outils du client Query Patroller. Définition d'un nouveau groupe de partitions de base de données dans Query Patroller Lors de la définition d'un nouvel espace table, au cours de l'installation de Query Patroller dans un environnement partitionné, vous pouvez sélectionner un groupe de partitions de base de données existant. Vous pouvez également définir un nouveau groupe de partitions de base de données pour le nouvel espace table. Dans ce cas, vous ne pouvez sélectionner qu'une seule partition de base de données dans la liste affichée dans le panneau d'installation, pour ce nouveau groupe de partitions de base de données. Si vous souhaitez ajouter d'autres partitions dans le nouveau groupe de partitions de base de données, vous devez les ajouter manuellement, une fois l'installation effectuée. Installation des outils du client Query Patroller Il n'est pas nécessaire d'installer les outils du client Query Patroller sur les clients DB2 afin de soumettre des requêtes au serveur Query Patroller. Re-création des versions bêta des bases de données Si vous avez créé des bases de données dans une version bêta de DB2 UDB version 8.2, vous devez les recréer dans la version officielle de la version 8.2. Ceci implique la re-création de bases de données spatiales pour DB2 Geodetic Extender version 8.2. Installation de fichiers MDAC pour les versions en langue nationale de DB2 UDB Si vous n'installez pas la version en langue nationale de Microsoft Data Access Components (MDAC) 2.7 avant celle de DB2 Universal Database (UDB) version 8.2, DB2 UDB installe alors, par défaut, les fichiers MDAC en anglais. Les panneaux de l'administrateur de source de données ODBC Windows s'affichent non traduits si votre système d'exploitation n'est pas en anglais. Pour remédier à cela, installez la solution logicielle "MDAC 2.7 RTM - Refresh" disponible sur le site Web Microsoft, à l'adresse http://msdn.microsoft.com/data/downloads/updates/default.aspx. Choisissez la langue à installer, téléchargez l'exécutable requis, puis exécutez-le. Les fichiers de l'administrateur de source de données ODBC traduits seront alors installés. Politique de licence DB2 pour DB2 Universal Database Workgroup Server Edition La politique de licence Internet n'est pas valable pour DB2 Universal Database Workgroup Server Edition. Si vous avez besoin d'une licence pour les utilisateurs Internet, vous devez acheter DB2 Universal Database Workgroup Server Unlimited Edition. Installation de polices asiatiques supplémentaires (Linux) IBM offre des ensembles de polices supplémentaires pour Linux, comprenant une prise en charge supplémentaire des jeux de caractères à deux octets pour les polices asiatiques. Ces ensembles de polices sont nécessaires pour certaines versions de Linux qui installent uniquement les polices requises pour l'affichage des caractères spécifiques au pays ou à la région. Si vous exécutez la commande db2setup et trouvez des caractères manquants dans l'interface de l'assistant d'installation DB2, il est probable que votre système Linux ne dispose pas de toutes les polices requises. Pour que la commande db2setup fasse correctement référence aux polices du CD-ROM d'installation, procédez comme suit : 1. Exécutez la commande suivante : export JAVA_FONTS=//db2//java/jre/lib/fonts où est l'emplacement de l'image d'installation et le nom d'un répertoire comportant un préfixe Linux. 2. Relancez la commande db2setup. Si, suite à l'installation, vous remarquez des caractères manquants en utilisant les outils d'interface utilisateur graphique DB2, installez les polices requises fournies avec DB2. Vous pouvez trouver ces polices dans le répertoire polices sur l'un des CD suivants : * IBM Developer Kit, Java Technology Edition (64 bits) pour AIX 5L * Serveur d'applications DB2 intégré et applications (registre XML, outils d'administration Web et débogueur Java réparti) pour votre système d'exploitation Le répertoire polices contient deux types de caractères : Times New Roman WorldType et Monotype Sans Duospace WorldType. Pour chaque type, il existe une police spécifique au pays ou à la région. Le tableau suivant liste les huit polices fournies au format compressé dans le répertoire polices. Tableau 7. Noms de fichiers pour les polices asiatiques supplémentaires +-------------------------+---------------------+---------------------+ | Famille de polices | Nom du fichier de | Pays ou Région | | | la police | | +-------------------------+---------------------+---------------------+ | Times New Roman WT J | tnrwt_j.zip | Japon et autres | | | | pays ou régions | +-------------------------+---------------------+---------------------+ | Times New Roman WT K | tnrwt_k.zip | Corée | +-------------------------+---------------------+---------------------+ | Times New Roman WT SC | tnrwt_s.zip | Chine (Chinois | | | | simplifié) | +-------------------------+---------------------+---------------------+ | Times New Roman WT TC | tnrwt_t.zip | Taïwan (Chinois | | | | traditionnel) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdj.zip | Japon et autres | | WT J | | pays ou régions | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdk.zip | Corée | | WT K | | | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansds.zip | Chine (Chinois | | WT SC | | simplifié) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdt.zip | Taïwan (Chinois | | WT TC | | traditionnel) | +-------------------------+---------------------+---------------------+ Remarque : Ces polices ne remplacent pas les polices du système. Elles doivent être utilisées conjointement à ou avec DB2 Universal Database. Vous ne pouvez pas entreprendre de vente ou de distribution générale de ces polices. Procédure Pour installer une police asiatique supplémentaire, procédez comme suit : 1. Dézippez l'ensemble de polices. 2. Copiez l'ensemble des polices dans le répertoire /opt/IBMJava2-141/jre/lib/fonts. Si ce répertoire n'existe pas, vous devez le créer. 3. Exécutez la commande suivante : export JAVA_FONTS=/opt/IBMJava2-141/jre/lib/fonts Vous devez au moins installer une police par famille pour votre pays ou région. Si vous vous trouvez en Chine, Corée ou à Taïwan, utilisez les versions nationales ou régionales ; sinon utilisez la version japonaise des polices. Si vous avez assez d'espace sur votre système, installez les huit polices. Configuration du Centre de développement pour utiliser les kits Java Development Kits (Linux) Dans certains cas, DB2 Universal Database n'installe pas le kit JDK (Java Development Kit) sur le système d'exploitation du client. Pour utiliser le Centre de développement à des fins de développement de procédures mémorisées Java sur ces clients, vous devez indiquer l'emplacement d'un kit JDK installé au Centre de développement. Pour identifier l'emplacement d'un kit JDK, procédez comme suit : 1. Dans le centre de développement, sélectionnez Projet -> Paramêtres d'environnement. 2. Dans le bloc-notes des paramêtres d'environnement, sélectionnez le noeud Processus. 3. Dans la section d'accueil Java de la page Processus, sélectionnez le niveau JDK qui sera utilisé pour la création et l'exécution des procédures mémorisées Java. 4. Dans la zone Répertoire, spécifiez un chemin d'accès au répertoire existant ou accessible à partir du client sur lequel le JDK sélectionné est installé. 5. Si le poste client est utilisé pour développer des procédures mémorisées Java sur plusieurs serveurs DB2, vous devrez peut-être sélectionner des niveaux JDK supplémentaires et spécifier leur emplacement d'installation, selon les niveaux JDK utilisés par ces serveurs. Sur le serveur DB2, lors de l'installation du kit JDK, certaines bibliothèques Java n'ont peut-être pas été liées dans le sous-répertoire /usr/lib du système. Ces liens sont nécessaires pour la création et l'exécution des procédures mémorisées Java. La rubrique intitulée "Configuration de l'environnement Linux Java" dans la section Compatibilité des présentes Notes sur l'édition indique comment créer les liens à un kit de développement Java (JDK) sur un client Linux. Création d'ID de groupe et d'utilisateur sur des distributions United Linux 1.0 et SuSE Linux Pour créer des ID de groupe et d'utilisateur pour une installation DB2 UDB version 8.2 sur des distributions United Linux 1.0 et SuSE Linux, utilisez respectivement les commandes groupadd et useradd. La version 8.2 du manuel Installation et configuration - Informations complémentaires ne décrit pas de façon satisfaisante les commandes mkgroup et mkuser et leurs rôles respectifs dans la création d'ID de groupe et d'utilisateur. Le démon du système d'aide ne démarre pas après une installation à l'aide de la commande db2_install (UNIX et Linux) Si vous installez le Centre de documentation DB2 sur des plateformes UNIX et Linux à l'aide de la commande db2_install, le démon du système d'aide (db2icd) ne s'exécute pas après l'installation. Vous devez le lancer manuellement ou redémarrer votre ordinateur pour avoir accès à la documentation. Reportez-vous à la rubrique "Démon du Centre de documentation DB2" de la section mises à jour de la documentation | Installation et configuration des Notes sur l'édition. Compatibilité "Ready for Tivoli" (UNIX) Lorsque vous faites l'acquisition d'un progiciel IBM portant le logo "Ready for Tivoli", vous avez la possibilité de gérer vos produits IBM grâce aux divers outils Tivoli. Ces derniers permettent la détection automatique, la supervision et l'inventaire de vos applications Ready for Tivoli. Vous pouvez gérer les produits logiciels IBM portant le logo "Ready for Tivoli" à l'aide de produits comme IBM Tivoli Configuration Manager. La solution IBM Tivoli Monitoring for Databases prend en charge toutes les bases de données importantes, dont DB2 Universal Database (UDB), Oracle et Informix. Pour de plus amples informations, consultez le site Web IBM à l'adresse suivante http://www.ibm.com/software/tivoli/ Instrumentation Ready for Tivoli et DB2 UDB version 8 Pour installer et configurer votre instrumentation, demandez à votre administrateur Tivoli d'effectuer les opérations suivantes : 1. Le fichier signature "Tivoli Ready" correspondant à ce produit DB2 s'intitule xxx.sys. A partir de FixPack 4, ces fichiers signature seront régénérés par FixPack plutôt que par version. Confirmez que les fichiers signature sont installés dans le répertoire suivant : %install DB2DIR%/tivready 2. Installez et configurez le package d'activation Tivoli GEM 2.2 Tivoli Ready sur tous les postes que vous avez l'intention de contrôler. Pour télécharger le package d'activation Tivoli Ready et obtenir des instructions détaillées sur son installation et son utilisation, consultez le site Web http://www.ibm.com/software/sysmgmt/products/support/ 3. IBM Tivoli Monitoring for Databases permet une meilleure gestion des bases de données. La solution ITM for Databases utilise la nouvelle édition du produit Distributed Monitoring (appelé IBM Tivoli Monitoring ou ITM), qui améliore considérablement les possibilités de supervision grâce à l'utilisation de ce nouveau moteur de contrôle. ITM for Databases prend en charge DB2 UDB grâce au composant Proactive Analysis Component (PAC). Ce composant est intégré à DB2 UDB. L'ensemble de moniteurs qu'il offre permet un déploiement et une activation rapides. L'administrateur de bases de données peut également définir des moniteurs, seuils et tâches personnalisés. Vous trouverez des informations complémentaires à l'adresse suivante : http://www.ibm.com/software/tivoli/ Vous trouverez des informations sur d'autres produits Tivoli à l'adresse suivante : http://www.ibm.com/software/tivoli/ Outil de réduction de l'image d'installation - db2iprune (Windows) L'utilitaire de ligne de commande db2iprune permet de réduire la taille de l'image d'installation du produit Windows DB2 Universal Database (UDB). Cet outil est particulièrement utile pour les déploiements de DB2 UDB à grande échelle, mais aussi pour l'intégration de DB2 UDB dans une application. L'outil db2iprune est constitué d'un fichier d'entrée et d'un fichier exécutable. Le fichier (.prn) contient une liste complète des composants qui peuvent être supprimés, il vous permet d'indiquer les fonctionnalités et langues que vous souhaitez supprimer de l'image d'installation. Le fichier exécutable db2iprune (db2iprune.exe) supprime ensuite les fichiers CAB associés à ces fonctionnalités et langues. Il en résulte une nouvelle image DB2 UDB, plus petite, qui peut être installée à l'aide des méthodes d'installation habituelles. Les FixPacks sont également appliqués à l'aide de méthodes standard. Lorsque le FixPack est installé, il détecte et met à jour uniquement les composants qui ont été installés à l'aide de db2iprune. L'outil db2iprune se trouve dans le répertoire \db2\windows\utilities\db2iprune du CD-ROM d'installation de votre produit DB2 UDB. Ce répertoire contient également un fichier Readme. Pour des instructions détaillées concernant l'utilisation de db2iprune, consultez ce fichier Readme. Restriction relative à l'installation de la documentation de la version 8 de DB2 Universal Database (Windows) Sous Windows, n'installez pas le Centre de documentation (documentation HTML) de la version 8 de DB2 Universal Database (UDB) sur un poste de travail ou un serveur sur lequel un produit de la version 7 (ou d'une version antérieure) de DB2 UDB est déjà installé. Le programme d'installation détecte la version précédente et il la désinstalle. mise à niveau des installations précédentes (Windows) Si un produit DB2 est installé sur votre machine à un niveau antérieur de la version 8, l'image d'installation le détecte et le met à jour (dernier niveau). Configuration système requise pour DB2 .NET Data Provider (Windows) Avant de lancer le programme d'installation de DB2 Universal Database (UDB) pour installer DB2 .NET Data Provider, .NET Framework doit être installé sur votre poste. Si .NET Framework n'est pas installé, le programme d'installation de DB2 UDB n'enregistrera pas DB2 .NET Data Provider. Si DB2 UDB est installé mais pas .NET Framework, DB2 .NET Data Provider n'est pas enregistré. Si vous installez .NET Framework ultérieurement, vous pouvez lancer l'exécutable db2nmpreg pour enregistrer le fournisseur. L'exécutable se trouve dans le répertoire sqllib\bin. Il n'y a pas de paramêtres. Pour enregistrer DB2 .NET Data Provider, tapez db2nmpreg dans une fenêtre de commande. Installation des clients DB2 version 8 et DB2 Connect PE avec des droits autres que ceux de l'administrateur (Windows) Lors de l'installation de DB2 Administration Client, de DB2 Application Development Client ou de DB2 Connect Personal Edition, vous devez mettre à jour le fichier des services TCP/IP de Windows si les conditions suivantes sont réunies : * la fonction de création d'entrepôts de données est sélectionnée lors de la configuration de l'installation * l'ID utilisateur effectuant l'installation n'est pas membre du groupe Administrateurs sur le poste cible * le produit est installé sur l'un des systèmes d'exploitation suivants : Windows NT, Windows 2000, Windows XP ou Windows Server 2003. Si toutes ces conditions s'appliquent, les entrées suivantes doivent être ajoutées au fichier des services TCP/IP de Windows : Tableau 8. Entrées requises dans le fichier de services TCP/IP de Windows +----------------------------------+----------------------------------+ | Nom de port | Numéro de port | +----------------------------------+----------------------------------+ | vwkernel | 11000/tcp | +----------------------------------+----------------------------------+ | vwd | 11001/tcp | +----------------------------------+----------------------------------+ | vwlogger | 11002/tcp | +----------------------------------+----------------------------------+ Sans ces entrées, le Data Warehouse Center ne peut pas fonctionner correctement. Remarques relatives à la migration Outre les rubriques présentées ici, vous trouverez des informations récentes concernant la migration des produits DB2 au niveau du portail de migration DB2 à l'adresse : http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21200005 db2updv8 - Note technique Pour obtenir les dernières informations sur db2updv8, y compris des informations détaillées importantes sur l'utilisation et les solutions aux incidents courants, voir la note technique 1178848 à l'adresse http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21178848 après avoir exécuté db2updv8, vous ne pouvez pas revenir à la version 8.1 Une fois que vous avez exécuté la commande db2updv8 pour mettre à jour les catalogues système au niveau de la version 8 actuelle, vous ne pouvez pas revenir à la version 8.1. Migration des tables EXPLAIN Afin de créer les tables EXPLAIN, la commande db2updv8 doit être exécutée lors de l'application de la version 8.2.2 (équivalente de la version 8.1, Fixpak 9) ou d'une version supérieure de DB2 Universal Database (UDB) au FixPak 1 de la version 8.2 de DB2 UDB (équivalente de la version 8.1, Fixpak 8) ou d'une version inférieure. L'exécution de la commande db2updv8 crée la fonction EXPLAIN_GET_MSG, qui permet de réexécuter EXPLAIN.DDL. Si vous tentez de créer les tables explain à l'aide de EXPLAIN.DDL sans exécuter la commande db2updv8, il se peut que vous receviez le message d'erreur suivant : DB21034E La commande a été traitée comme une instruction car il ne s'agit pas d'une commande valide pour l'interpréteur de commandes. Le message SQL suivant a été renvoyé lors de son traitement : SQL0440N Aucune routine autorisée "EXPLAIN_GET_MSG" de type "FUNCTION" ayant des arguments compatibles n'a été trouvée. LINE NUMBER=26. SQLSTATE=42884 Migration de l'Extension XML depuis des versions précédentes Si vous utilisez une version antérieure de l'Extension XMLDB2, vous devez effectuer la migration de chaque base de données activée pour celle-ci avant d'utiliser une base de données XML avec l'édition d'Extension XML mise à jour. Chaque nouveau groupe de correctifs contient toutes les mises à jour précédentes. Avant de lancer le programme de migration, créez une copie de sauvegarde de la base de données. Pour effectuer la migration d'une base de données XML et de colonnes XML, suivez les étapes ci-après. 1. A partir de la ligne de commande DB2, entrez : db2 connect to nom_base_données db2 bind dxxinstall/bnd/@dxxMigv.lst db2 bind dxxinstall/bnd/@dxxbind.lst où dxxinstall désigne le chemin d'accès au répertoire d'installation de DB2 Universal Database. 2. A partir de la ligne de commande DB2, entrez : dxxMigv nom_base_données Migration de DB2 Universal Database lors de l'utilisation de DataJoiner ou de la réplication Si vous voulez faire migrer une instance de DataJoiner ou DB2 Universal Database (UDB) pour Linux, UNIX et Windows, sur laquelle vous exécutez les programmes Capture ou Apply pour la réplication DB2 UDB, vous devez préparer la migration de votre environnement de réplication avant de procéder à la migration de l'instance DB2 UDB ou DataJoiner. Les instructions détaillées permettant d'effectuer cette préparation figurent dans la documentation de DB2 DataPropagator, version 8. Cette documentation relative à la migration est disponible sur le site http://www.ibm.com/software/data/dpropr/. Migration de DB2 Universal Database (Windows) Avant d'effectuer la migration de DB2 Universal Database (UDB) sous Windows, suivez pas à pas les étapes décrites ci-après. Conditions préalables Avant la migration : 1. Lisez les recommandations relatives à la migration, les restrictions et les recommandations en matière d'espace. 2. Enregistrez les paramêtres de configuration avant d'effectuer la migration de DB2 UDB. 3. Modifiez le niveau d'erreur de diagnostic. 4. Vérifiez que les bases de données sont prêtes pour la migration de DB2 UDB. 5. Sauvegardez vos bases de données. 6. Si vous utilisez la réplication, vous devez archiver tous les fichiers journaux DB2 UDB. 7. Vous devez disposer des droits SYSADM. 8. Mettez le serveur DB2 hors ligne pour la migration de DB2 UDB. Remarque : Comme pour la version 8.1, la valeur ON sera attribuée par défaut à la variable de registre DB2_HASH_JOIN. Pour plus de détails, voir la sous-section "Administration: Performances" de la section "mises à jour de la documentation". Migration d'une base de données DB2 version 8 Windows 32-bits vers Windows 64 bits Cette rubrique fournit les étapes de la migration de votre base de données DB2 version 8 32 bits (sur un ordinateur 32 bits) vers une base de données 64 bits, sur un système d'exploitation Windows 64 bits. Conditions préalables * Une version 64 bits de DB2 version 8 doit être installée sur votre ordinateur 64 bits. * Assurez-vous que votre système Windows 32 bits exécute DB2 version 8. Procédure Pour faire migrer DB2 version 8 sur Windows 64 bits, procédez comme suit : 1. Sauvegardez vos bases de données DB2 version 8 sur votre système Windows 32 bits. 2. Restaurez votre sauvegarde de DB2 version 8 (créée à l'étape 1) sur votre système Windows 64 bits. Remarque : Outre la migration de DB2 UDB, de systèmes 32 bits vers des systèmes 64 bits, les migrations suivantes sont également possibles : * Migration entre les différentes versions de Windows * Migration entre les différentes versions de DB2 UDB * Migration de la totalité en une fois * Migration régressive en 32 bits Des informations détaillées sont disponibles dans le Redbook IBM : Scaling DB2 UDB on Windows Server 2003. Ce Redbook est disponible à l'adresse URL suivante : http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247019.html Migration de la version 7 vers la version 8.2.2 de DB2 UDB Version 8.2.2 dans un environnement MSCS Cette rubrique décrit comment migrer de la version 7 de DB2 Universal Database (UDB) vers la version 8.2.2 de DB2 UDB (équivalente de la version 8.1, FixPack 9) dans un environnement serveur en grappe Microsoft (MSCS). Hypothèses : Un exemple de configuration sera utilisé pour illustrer comment effectuer la migration vers la version 8.2.2 de DB2 UDB (équivalent de la version 8.1, FixPak 9) dans un environnement MSCS. Cet exemple de configuration contient deux ordinateurs Windows Server 2000 sur lesquels est installée la version 7 de DB2 UDB Enterprise Server Edition. La configuration initiale est une instance DB2 comprenant deux partitions. Il existe en outre deux groupes de grappes : * DB2 Group 0 qui contient la Partition 0 active sur l'ordinateur A. Le serveur d'administration (DAS) se trouve également à cet endroit. * DB2 Group 1 qui contient la Partition 1 active sur l'ordinateur B. Condition préalable Avant de commencer la migration, effectuez une sauvegarde de la base de données. Procédure Pour effectuer la migration de la version 7 vers la version 8.2.2 de DB2 UDB (équivalent de la version 8.1, FixPak 9) dans un environnement MSCS, procédez comme suit : 1. Désactivez la fonction de reprise automatique par restauration (Automatic failback). Vous devrez peut-être redémarrer votre ordinateur lors du processus d'installation. Si tel est le cas, le service de grappe redémarre automatiquement. C'est la raison pour laquelle la fonction de reprise automatique par restauration (Automatic failback) doit être désactivée afin que cette fonction ne s'applique à aucun des groupes. a. Pour désactiver la fonction de reprise automatique par restauration (Automatic failback) dans DB2 Group 0 : 1) Dans la fenêtre Cluster Administrator, cliquez sur DB2 Group 0 avec le bouton droit de la souris. 2) Cliquez sur Properties. La fenêtre DB2 Group 0 Properties s'ouvre. 3) Dans l'onglet Failback, sélectionnez le bouton d'option Prevent failback. 4) Cliquez sur OK. b. Pour désactiver la fonction de reprise automatique par restauration (Automatic failback) dans DB2 Group 1 : 1) Dans la fenêtre Cluster Administrator, cliquez sur DB2 Group 1 avec le bouton droit de la souris. 2) Cliquez sur Properties. La fenêtre DB2 Group 1 Properties s'ouvre. 3) Dans l'onglet Failback, sélectionnez le bouton d'option Prevent failback. 4) Cliquez sur OK. 2. Déplacez DB2 Group 1 sur l'ordinateur A. a. Dans l'interface graphique de Cluster Administrator, cliquez sur DB2 Group 1. b. Cliquez sur le bouton droit de la souris, puis sélectionnez Move Group. La colonne Owner indique désormais l'ordinateur A. 3. arrêtez le service de grappe sur l'ordinateur B. a. Dans la fenêtre Component Services, cliquez sur Cluster Service avec le bouton droit de la souris. b. Cliquez sur Stop. 4. Téléchargez puis installez la version 8.2.2 de DB2 UDB (équivalent de la version 8.1, FixPak 9) sur l'ordinateur B. Remarque : * DB2 UDB s'exécute et est toujours disponible sur l'ordinateur A. * Dans le cadre du processus d'installation, vous serez invité à exécuter la commande db2imigr afin de migrer les instances DB2 sur cet ordinateur. Lors de l'exécution de la commande db2imigr, vous devrez peut-être redémarrer votre ordinateur. 5. Mettez hors ligne les ressources DB2 sur l'ordinateur A. a. Partition 0, Partition 1 et le serveur d'administration (DAS) sont tous des ressources sur l'ordinateur A. Celles-ci doivent être mises hors ligne l'une après l'autre. Pour mettre hors ligne les ressources de l'ordinateur A, procédez comme suit : 1) Dans le volet de gauche de la fenêtre Cluster Administrator, cliquez sur Groups. 2) Sélectionnez DB2 Group 0. Les ressources du groupe s'affichent dans le volet de droite. * Pour DB2 Group 0, les ressources DB2 incluent la Partition 0 et le DAS. 3) Dans le volet de droite, cliquez sur l'une des ressources avec le bouton droit de la souris et sélectionnez Take Offline. * Répétez cette étape pour chacune des ressources DB2 de DB2 Group 0. 4) Sélectionnez DB2 Group 1. Les ressources du groupe s'affichent dans le volet de droite. * Pour DB2 Group 1, les ressources DB2 incluent la Partition 1. 5) Dans le volet de droite, cliquez sur la ressource (Partition 1) avec le bouton droit de la souris et sélectionnez Take Offline. 6. Démarrez le service de grappe sur l'ordinateur B. Si l'installation a requis un redémarrage de votre ordinateur et, si le Restart Type du service de grappe a la valeur Automatic, ignorez cette étape, le service de grappe étant déjà démarré. Pour démarrer le service de grappe : a. Dans la fenêtre Component Services, cliquez sur Cluster Service avec le bouton droit de la souris. b. Cliquez sur Start. 7. Déplacez DB2 Group 0 et DB2 Group 1 sur l'ordinateur B. a. Dans la fenêtre Cluster Administrator, cliquez sur DB2 Group 0. b. Cliquez sur le bouton droit de la souris, puis sélectionnez Move Group. La colonne Owner indique désormais l'ordinateur B. c. Cliquez sur DB2 Group 1. d. Cliquez sur le bouton droit de la souris, puis sélectionnez Move Group. La colonne Owner indique désormais l'ordinateur B. 8. Mettez en ligne les ressources DB2 sur l'ordinateur B. a. Partition 0, Partition 1 et le serveur d'administration (DAS) sont désormais des ressources sur l'ordinateur B. Celles-ci doivent être remises en ligne l'une après l'autre. Pour remettre ces ressources en ligne, procédez comme suit : 1) Dans le volet de gauche de la fenêtre Cluster Administrator, cliquez sur Groups. 2) Sélectionnez DB2 Group 0. Les ressources du groupe s'affichent dans le volet de droite. * Pour DB2 Group 0, les ressources DB2 incluent la Partition 0 et le DAS. 3) Dans le volet de droite, cliquez sur l'une des ressources avec le bouton droit de la souris et sélectionnez Bring Online. * Répétez cette étape pour chacune des ressources DB2 de DB2 Group 0. 4) Sélectionnez DB2 Group 1. Les ressources du groupe s'affichent dans le volet de droite. * Pour DB2 Group 1, les ressources DB2 incluent la Partition 1. 5) Dans le volet de droite, cliquez sur la ressource (Partition 1) avec le bouton droit de la souris et sélectionnez Bring Online. b. Effectuez la migration de toutes les instances DB2 et de toutes les bases de données DB2. 1) Effectuez la migration de toutes les instances DB2 à l'aide de la commande db2imigr : a) Pour trouver toutes les instances DB2, exécutez la commande db2ilist. b) Pour effectuer la migration de chaque instance DB2, exécutez la commande db2imigr. Cette commande se trouve dans le répertoire sqllib\bin et doit être exécutée pour chaque instance DB2. 2) Effectuez la migration de toutes les bases de données DB2 à l'aide de la commande migrate database. 9. arrêtez le service de grappe sur l'ordinateur A. a. Dans la fenêtre Component Services, cliquez sur Cluster Service avec le bouton droit de la souris. b. Cliquez sur Stop. 10. Téléchargez puis installez la version 8.2.2 de DB2 UDB (équivalent de la version 8.1, FixPak 9) sur l'ordinateur A. Remarque : * DB2 UDB s'exécute et est toujours disponible sur l'ordinateur A. * Dans le cadre du processus d'installation, vous devrez peut-être redémarrer votre ordinateur. * Vous n'avez pas besoin d'exécuter les commandes db2imigr et migrate database sur l'ordinateur A puisque vous les avez déjà exécutées sur l'ordinateur B. 11. Démarrez le service de grappe sur l'ordinateur A. Si l'installation a requis un redémarrage de votre ordinateur et, si le Restart Type a la valeur Automatic, ignorez cette étape, le service de grappe étant déjà démarré. Pour démarrer le service de grappe : a. Dans la fenêtre Component Services, cliquez sur Cluster Service avec le bouton droit de la souris. b. Cliquez sur Start. 12. Déplacez DB2 Group 0 sur l'ordinateur A. a. Dans la fenêtre Cluster Administrator, cliquez sur DB2 Group 0. b. Cliquez sur le bouton droit de la souris, puis sélectionnez Move Group. La colonne Owner indique désormais l'ordinateur A. Cette action ramène l'environnement MSCS à la configuration initiale. 13. Si la fonction de reprise automatique par restauration (Automatic failback) a été désactivée à l'étape 1, vous devez la réactiver. a. Pour désactiver la fonction de reprise automatique par restauration (Automatic failback) dans DB2 Group 0 : 1) Dans l'interface graphique de Cluster Administrator, cliquez sur DB2 Group 0 avec le bouton droit de la souris. 2) Cliquez sur Properties. La fenêtre DB2 Group 0 Properties s'ouvre. 3) Dans l'onglet Failback, sélectionnez le bouton d'option Allow failback. 4) Cliquez sur OK. b. Pour désactiver la fonction de reprise automatique par restauration (Automatic failback) dans DB2 Group 1 : 1) Dans la fenêtre Cluster Administrator, cliquez sur DB2 Group 1 avec le bouton droit de la souris. 2) Cliquez sur Properties. La fenêtre DB2 Group 1 Properties s'ouvre. 3) Dans l'onglet Failback, sélectionnez le bouton d'option Allow failback. 4) Cliquez sur OK. Migration de la base de données (HP-UX sur IA64) La migration de la base de données n'est pas prise en charge par DB2 Universal Database (UDB) pour HP-UX sur IA64 dans les versions 8.x. La restauration d'une image de sauvegarde de la version 7 de DB2 vers une instance de la version 8 n'est pas prise en charge par DB2 UDB pour HP-UX sur IA64. Informations sur la désinstallation Désinstallation silencieuse de DB2 UDB (Windows) Pour supprimer silencieusement les produits DB2 à l'aide de la commande msiexec : msiexec /x /qn où correspond au code du produit que vous souhaitez supprimer. Voici une liste des codes produit DB2 : DB2 Universal Database Enterprise Server Edition (ESE) {D8F53726-C7AD-11D4-9155-00203586D551} DB2 Universal Database Workgroup Server Edition (WSE) {7A28F948-4945-4BD1-ACC2-ADC081C24830} DB2 Universal Database Express Edition (EXP) {58169F10-CA30-4F40-8C6D-C6DA8CE47E16} DB2 Universal Database Personal Edition (PE) {C0AA883A-72AE-495F-9601-49F2EB154E93} DB2 Warehouse Manager (WM) {84AF5B86-19F9-4396-8D99-11CD91E81724} DB2 Data Links Manager (DLM) {1D16CA65-F7D9-47E5-BB26-C623A44832A3} Relational Connect (RCON) {273F8AB8-C84B-4EE6-85E7-D7C5270A6D08} DB2 Connect Enterprise Edition (CEE) {9C8DFB63-66DE-4299-AC6B-37D799A728A2} DB2 Connect Personal Edition (CPE) {F1912044-6E08-431E-9B6D-90ED10C0B739} DB2 Administration Client (ADMCL) {ABD23811-AA8F-416B-9EF6-E54D62F21A49} DB2 Application Development Client (ADCL) {68A40485-7F7F-4A91-9AB6-D67836E15CF2} DB2 Run-Time Client (RTCL) {63F6DCD6-0D5C-4A07-B27C-3AE3E809D6E0} DB2 7 (RTLITE) {07C9CEE7-4529-4E60-95D3-6B6EF6AC0E81} DB2 Eclipse Documentation (DOCE) {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} DB2 Query Patroller (QP) {7A8BE511-8DF3-4F22-B61A-AF0B8755E354} Life Sciences Data Connect (LSDC) {DD30AEB3-4323-40D7-AB39-735A0523DEF3} DB2 Cube Views (CUBE) {C8FEDF8F-84E8-442F-A084-0A0F6A772B52} DB2 Spatial Extender (SE) {F6846BF9-F4B5-4BB2-946D-3926795D5749} Exemple Si vous souhaitez supprimer DB2 UDB Enterprise Edition, entrez la commande suivante msiexec /x {D8F53726-C7AD-11D4-9155-00203586D551} /qn Les codes produit DB2 suivants ne sont plus pris en charge dans DB2 UDB version 8.2 : * WMC {5FEA5040-22E2-4760-A88C-73DE82BE4B6E} * DOC {73D99978-A255-4150-B4FD-194ECF4B3D7C} Code produit pour la suppression du Centre de documentation DB2 à l'aide d'une procédure silencieuse de désinstallation (Windows) Lors de la suppression du Centre de documentation à l'aide d'une procédure de désinstallation silencieuse sous Windows, utilisez le code produit suivant : {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} Limites, incidents et palliatifs connus Les informations ci-après concernent les incidents recensés, restrictions et solutions qui s'appliquent à cette édition. Toutes les limites et restrictions peuvent s'appliquer ou non à d'autres éditions du produit. Le site Web de support DB2 contient également des notes techniques et des notifications flash de service qui décrivent les modifications apportées à la documentation ainsi que les limites et les solutions connues après la création du présent document. L'adresse du site Web de support DB2 est la suivante : http://www.ibm.com/software/data/db2/udb/support.html. Les marques de révision signalent le texte qui a été ajouté ou modifié. Une barre verticale ( | ) indique des informations ajoutées ou modifiées pour la version 8.2, FixPack 4 (équivalente de la version 8.1, FixPack 11). Limitations db2look - Limitation de l'espace table de stockage automatique La commande db2look se termine correctement avec les bases de données qui utilisent des espaces table de stockage automatique. Toutefois, elle n'affiche pas les informations d'espace table spécifiques aux espaces table de stockage automatique. La fonction de table SNAP_GET_DB renvoie des résultats incomplets Lorsque la fonction de table SNAP_GET_DB est invoquée dans un environnement de partitionnement de base de données (environnement DPF) avec la valeur d'entrée -2 (cliché global), cette fonction renvoie des résultats incomplets pour les quatre colonnes suivantes : * FIRST_ACTIVE_LOG * LAST_ACTIVE_LOG * CURRENT_ACTIVE_LOG * CURRENT_ARCHIVE_LOG Ces éléments ne peuvent pas être agrégés pour un cliché global. Pour extraire l'ensemble complet des valeurs pour ces éléments de cliché, la fonction de table SNAP_GET_DB doit être appelée individuellement sur chaque partition. IMPORT REPLACE ne respecte pas la clause Not Logged Initially L'option REPLACE de la commande IMPORT ne respecte pas la clause NLI (NOT LOGGED INITIALLY) de l'instruction CREATE TABLE ou la clause ACTIVATE NOT LOGGED INITIALLY de l'instruction ALTER TABLE. Si une importation avec l'action REPLACE est effectuée dans la même opération qu'une instruction CREATE TABLE ou ALTER TABLE oà la clause NLI est invoquée, l'importation ne respectera pas la clause NLI. Toutes les insertions seront consignées. Correctif 1 Supprimez le contenu de la table à l'aide de l'instruction DELETE, puis appelez l'importation avec l'instruction INSERT. Correctif 2 Supprimez la table puis créez-la à nouveau ; appelez ensuite l'importation grâce à l'instruction INSERT. Cette restriction s'applique à DB2 UDB version 7 et DB2 UDB version 8. Réorganisation des données de champ étendu et de grand objet impossible par une réorganisation de table interne Au cours d'une réorganisation de table interne, ou en ligne, les données de champ étendu et de grand objet ne peuvent pas être réorganisées. Elles peuvent l'être à l'aide d'une réorganisation de table classique, ou hors connexion, en indiquant le paramêtre LONGLOBDATA avec la commande REORG TABLE. Toutefois, même si la réorganisation des données de champ étendu et de grand objet permet de récupérer de l'espace libre, elle n'améliore pas la mise en cluster et peut augmenter considérablement le temps nécessaire pour terminer la réorganisation. Un comportement de verrouillage dans les curseurs bloc peut paraître incohérent dans des applications client Dans l'isolement d'une stabilité du curseur (CS), la ligne associée à la position actuelle du curseur sur le serveur de base de données est toujours verrouillée. Lors d'un accès groupé aux données, plusieurs lignes sont renvoyées vers une seule mémoire tampon. Dans la plupart des cas, la dernière ligne traitée par le serveur ne va pas s'insérer exactement et sera segmentée entre deux mémoires tampon. L'application distinguera cette segmentation de ligne uniquement à la réception de la seconde mémoire tampon. Par conséquent, aucune des lignes renvoyées à l'application ne sera verrouillée. Dans les rares cas oà la dernière ligne traitée par le serveur s'ajuste exactement, la position du curseur restera sur la dernière ligne dans la mémoire tampon, ce qui signifie que la dernière ligne renvoyée à l'application sera verrouillée. Exportation de données avec ODBC vers le programme d'entrepôt de données du fichier L'exportation de données avec ODBC vers le programme d'entrepôt de données du fichier ne prend pas en charge les types de données Sybase suivants : * BIT * BINARY * VARBINARY Types de données non pris en charge dans le débogueur SQL intégré du Centre de développement Les types de données suivants ne sont pas pris en charge dans le débogueur SQL intégré au Centre de développement : * Dans DB2 Universal Database (UDB) pour Linux, UNIX, et Windows, les types de données CHAR FOR BIT DATA, VARCHAR FOR BIT DATA et GRAPHIC ne sont pas pris en charge. * Dans DB2 UDB pour z/OS, le type de données GRAPHIC n'est pas pris en charge, de même que les types de données BLOB et CLOB utilisés comme paramêtres. Les types BLOB et CLOB utilisés en tant que variables locales sont pris en charge. Types structurés du Centre de développement Le Centre de développement ne prend plus en charge la création des types structurés. Limitations du Centre de développement pour les systèmes d'exploitation 64 bits Le débogage de procédures mémorisées Java sur un serveur 64 bits n'est pas pris en charge par le Centre de développement. Le débogage de procédures mémorisées SQL est pris en charge sur les systèmes d'exploitation Windows 64 bits. Le développement de fonctions utilisateur OLE DB ou XML n'est pas pris en charge pour les serveurs 64 bits. Centre de développement (Linux) Vous ne pouvez pas utiliser le Centre de développement pour déboguer des procédures mémorisées Java s'exécutant sur l'une des distributions Linux (32 bits, 64 bits, Intel, zSeries ou iSeries). Débogage de procédures mémorisées avec guillemets Le Centre de développement ne prend pas en charge le débogage des procédures mémorisées comportant des guillemets (") dans le nom de procédure mémorisée, le schéma ou le nom spécifique. Chemins d'accès requis pour la compilation de routines Java dans le Centre de développement Le Centre de développement ne peut pas compiler de routines Java s'il ne sait pas où sont installées les versions du kit du développeur. Leurs répertoires par défaut seront écrits dans votre fichier $HOME/.ibm/db2/dc/DB2DC.settings lors du premier démarrage du Centre de développement. Vous pouvez les copier dans votre fichier $USER.settings et les modifier via un éditeur Unicode, ou créer des liens symboliques vers les répertoires du kit du développeur dans les emplacements par défaut. Limitations du Centre de développement concernant l'exécution et le débogage simultanés de procédures mémorisées Java Le Centre de développement ne prend pas en charge l'exécution et le débogage simultanés de procédures mémorisées Java. Dans le Centre de développement, vous pouvez exécuter plusieurs procédures mémorisées Java simultanément ou déboguer une procédure mémorisée Java ; il n'est pas possible de d'exécuter une procédure mémorisée Java tout en en déboguant une autre. Par défaut, le mot clé de configuration du gestionnaire de base de données KEEPFENCED a la valeur KEEPFENCED=YES, ce qui est requis pour déboguer les procédures mémorisées SQL. Lorsque le mot clé KEEPFENCED a la valeur par défaut YES, le processus de routine reste actif et des conflits relatifs au port JVM se produiront. Les procédures mémorisées Java généreront une exception JVM et échoueront dans les cas suivants si le paramêtre de configuration du gestionnaire de bases de données KEEPFENCED=YES par défaut est utilisé : * construction puis débogage d'une procédure mémorisée Java dans le Centre de développement ; * exécution d'une procédure mémorisée Java par un utilisateur et débogage d'une autre procédure mémorisée Java par un autre utilisateur alors que la procédure mémorisée Java initiale est toujours en cours d'exécution ; * débogage d'une procédure mémorisée Java par un utilisateur et exécution d'une autre procédure mémorisée Java par un autre utilisateur alors que la procédure mémorisée Java initiale est toujours en cours de débogage ; Pour remédier à ces limitations, vérifiez que le mot clé de configuration du gestionnaire de bases de données KEEPFENCED a la valeur KEEPFENCED=NO en exécutant la commande suivante : db2 update dbm cfg using KEEPFENCED NO db2stop db2start Si le mot clé KEEPFENCED a la valeur NO, le processus db2fmp s'arrête lorsqu'un appel de procédure mémorisée Java se termine et DB2 Universal Database démarre un nouveau processus db2fmp pour gérer le prochain appel de routine. Ceci garantit l'absence de JVM en mode débogage au début du débogage d'une procédure mémorisée Java. Le paramêtre KEEPFENCED=YES est requis pour créer des procédures mémorisées SQL pour le débogage et afin de déboguer ces dernières. Lorsque le paramêtre KEEPFENCED=NO est défini, vous pouvez tout de même créer et exécuter des procédures mémorisées SQL, mais vous ne pouvez pas les déboguer. Méthode DB2SystemMonitor.getServerTimeMicros non prise en charge La méthode DB2 Universal JDBC Driver DB2SystemMonitor.getServerTimeMicros() n'est actuellement pas prise en charge par DB2 Universal Database pour les serveurs Linux, UNIX et Windows. La méthode DB2SystemMonitor.getServerTimeMicros() renvoie la valeur 0 lors de la connexion à DB2 Universal Database pour les serveurs Linux, UNIX et Windows. Le moteur d'exécution du compilateur IBM XL C/C++ doit être installé (systèmes Linux sur iSeries et pSeries, 64 bits) Vous devez disposer de la configuration suivante avant d'installer DB2 64 bits sur des systèmes Linux on iSeries et pSeries : * Vous devez utiliser du matériel iSeries ou pSeries pris en charge par la distribution Linux. * Vous devez exécuter l'une des deux distributions suivantes : * SUSE LINUX Enterprise Server (SLES) 9, ou * Red Hat Enterprise Linux 3 Update 3 (Taroon) * Vous devrez peut-être télécharger puis installer IBM XL C/C++ Advanced Edition V7.0 pour Linux Run-Time Environment Component. Pour plus d'informations, consultez le site Web http://www.ibm.com/support/docview.wss?uid=swg24007906 ou procédez comme suit : 1. Allez à la page de support XL C/C++ à l'adresse suivante : http://www.ibm.com/software/awdtools/xlcpp/support/ 2. Dans l'en-tête "Self Help: Download", sélectionnez "Latest Updates (PTFs)" 3. Dans l'en-tête "Linux", sélectionnez "XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment" 4. Suivez les instructions de la page correspondante. Universal JDBC Driver Type 2 non pris en charge par la version 8.2.2 de DB2 UDB (Linux AMD64) La version 8.2.2 de DB2 Universal Database (UDB) (équivalente de la version 8.1, FixPack 9) pour Linux AMD64 ne prend pas en charge le pilote Universal JDBC Driver Type 2. La prise en charge est prévue dans un prochain FixPack. Dans la version 8.2.2, la prise en charge JDBC est assurée à l'aide de Universal JDBC Driver Type 4 et du pilote Legacy JDBC Type 2 (COM.ibm.db2.jdbc.app.DB2Driver). Curseurs dans les applications PHP Lorsque l'interpréteur PHP crée un curseur pour une application, celui-ci est créé par défaut en tant que curseur flottant défini par une clé. Dans certains cas, les résultats renvoyés peuvent être inattendus. Afin d'éviter ceci, spécifiez de façon explicite la clause "FOR READ ONLY" pour toutes les instructions SELECT utilisées pour mettre à jour les données. Parmi les autres possibilités, vous pouvez aussi définir les paramêtres de configuration CLI "Patch2=6", "Patch2=42" ou "DisableKeysetCursor=1". Cependant, pour chacun d'eux d'autres conséquences sont possibles. Pour obtenir plus d'informations concernant ces mots clé de configuration, reportez-vous à la documentation Guide et Référence CLI. Limites du mot clé de la configuration ConnectNode CLI/ODBC Le mot clé ConnectNode ne concerne pas le Centre de contrôle. Le Centre de contrôle se connecte toujours au noeud catalogue auquel se réfère le paramêtre SQL_CONN_CATALOG_NODE. Restriction (CLI) de la fonction SQLColumns La fonction SQLColumns() ne prend pas en charge les données renvoyées par l'alias d'un alias. Lorsqu'elle est appelée sur un alias d'un alias, la fonction SQLColumns() renvoie un ensemble de résultats vide. Limitations des options de définition des accès pour les modules CLI Certaines options de définition des accès peuvent ne pas fonctionner lors de la définition d'accès de modules CLI avec l'un des fichiers suivants : db2cli.lst, ddcsmvs.lst, ddcs400.lst, ddcsvm.lst ou ddcsvse.lst. Etant donné que les modules CLI sont utilisés par les applications CLI, ODBC, JDBC, OLE DB, .NET et ADO, toute modification apportée à ces modules affecte toutes les applications de ce type. Par conséquent, seul un sous-ensemble d'options de définition d'accès est pris en charge par défaut lors de la définition d'accès des modules CLI. Ces options sont : ACTION, COLLECTION, CLIPKG, OWNER et REPLVER. Toutes les autres options qui impactent les modules CLI sont ignorées. Afin de créer des modules CLI avec des options de définition d'accès non prises en charges par défaut, spécifiez pour l'option COLLECTION un ID collection différent de l'ID par défaut, NULLID. Toute option de définition d'accès ainsi spécifiée est acceptée. Par exemple, pour créer des modules CLI avec l'option KEEPDYNAMIC YES, non prise en charge par défaut, lancez la commande suivante : db2 bind @db2cli.lst collection newcolid keepdynamic yes Pour que les applications CLI/ODBC puissent accéder aux modules CLI créés dans la nouvelle collection, attribuez le mot clé CurrentPackageSet CLI/ODBC du fichier d'initialisation db2cli.ini au nouvel ID collection. Afin d'écraser les modules CLI existant sous un ID collection spécifique, effectuez l'une des actions suivantes : * Supprimez le module CLI existant avant de lancer la commande de définition d'accès pour cet ID collection * Spécifiez l'option de définition d'accès ACTION REPLACE lorsque vous lancez la commande Restrictions de l'utilitaire CLI LOAD L'utilitaire CLI LOAD ne prend pas en charge les marqueurs de paramêtres si l'instruction SQL préparée pour l'insertion de données contient une clause SELECT. Avant le FixPak 3 de la version 8.2 (équivalente de la version 8.1, Fixpak 10), l'utilitaire CLI LOAD ne permet pas d'indiquer les colonnes cibles dans l'instruction INSERT qui contient une clause VALUES. Toutefois, à partir du FixPak 3 de la version 8.2 (équivalente de la version 8.1, Fixpak 10), l'utilitaire CLI LOAD permet d'indiquer les colonnes cibles dans une instruction INSERT ayant une clause VALUES. Par exemple, l'instruction suivante est désormais prise en charge par l'utilitaire CLI LOAD : INSERT into tableA (col1, col2, col3) VALUES (?, ?, ?) Création de la base de données du catalogue des outils non prise en charge (Linux pour AMD64) La création de la base de données du catalogue des outils sur une instance DB2 Universal Database (UDB) 64 bits sous Linux (AMD64) n'est pas prise en charge. Ne tentez pas de créer le catalogue des outils sous une instance 64 bits via l'une des méthodes suivantes : * installation de DB2 UDB * mise à jour d'une instance 64 bits via la commande db2isetup ; * lancement de la commande de l'interpréteur de commandes CREATE TOOLS CATALOG à l'issue de l'installation. La création de la base de données du catalogue d'outils sur une instance 32 bits sous Linux (AMD64) est prise en charge à partir de la version 8.1.4. Création de la base de données du catalogue d'outils non prise en charge (AIX, Solaris et HP-UX) La création du catalogue d'outils n'est pas prise en charge pendant l'installation de DB2 Universal Database (UDB) sur des instances 64 bits situées sur des plateformes 64 bits hybrides. Les plateformes hybrides sont les suivantes : * AIX * Environnements d'exploitation Solaris * HP-UX * Autres plateformes prenant en charge les instances 32 bits et 64 bits Si vous souhaitez créer un catalogue d'outils sur une instance 64 bits, ceci est possible après après l'installation de DB2 UDB. Pour ce faire, vous utiliserez l'interpréteur de commandes, en employant la commande CREATE TOOLS CATALOG CLP, ou le Centre de contrôle. Cette opération nécessite également l'installation d'IBM Developer Kit pour Java (64 bits). Consultez la section DB2 Administration Server du DB2 Administration Guide pour obtenir davantage d'informations. Limites de mémoire pour DB2 UDB Express et DB2 Workgroup Server Edition V8.2 Il existe des limites de mémoire pour les produits suivants : * IBM DB2 Universal Database (UDB) Express Edition (option d'utilisateur nommé). La mémoire maximum par serveur est de 4 Go. * IBM DB2 UDB Express Edition (option UC). La mémoire maximum par serveur est de 4 Go. * IBM DB2 UDB Workgroup Server Edition. La mémoire maximum par serveur est de 16 Go. * IBM DB2 UDB Workgroup Server Unlimited Edition. La mémoire maximum par serveur est de 16 Go. Planification de l'exécution d'un processus d'entrepôt à intervalles réguliers Lors de la planification de l'exécution d'un processus d'entrepôt à intervalles réguliers, vous devez déterminer la durée maximale nécessaire à la réalisation de toutes les étapes de production du processus, puis planifier les intervalles en fonction de cette information. Si l'exécution d'un processus excède l'intervalle prévu à cet effet, toutes les occurrences de ce processus planifiées ultérieurement ne seront ni exécutées ni replanifiées. Limites du support SNA dans la version 8 DB2 Universal Database (UDB) Enterprise Server Edition (ESE) version 8 (systèmes d'exploitation Windows et UNIX) et DB2 Connect Enterprise Edition (CEE) version 8 (systèmes d'exploitation Windows et UNIX) ne prennent plus en charge ce qui suit : * La capacité de mise à jour multisite (validation en deux phases) à l'aide de SNA ne peut pas être utilisée. Les applications nécessitant une mise à jour multisite (validation en deux phases) doivent utiliser la connectivité TCP/IP. La mise à jour multisite (validation en deux phases) sur un serveur de base de données hôte ou iSeries à l'aide de TCP/IP était possible depuis plusieurs versions. Les applications hôte ou iSeries nécessitant la mise à jour multisite (validation en deux phases) peuvent utiliser la nouvelle fonction de mise à jour multisite TCP/IP (validation en deux phases) de DB2 UDB ESE, version 8. * Les serveurs DB2 UDB ESE ou DB2 CEE n'acceptent plus les connexions clients à l'aide de SNA. Quant à la version 8, FixPack 1, DB2 UDB permet à la version 32 bits du système d'exploitation AIX, Solaris, HP-UX, et aux applications Windows d'accéder aux serveurs de base de données hôte ou iSeries à l'aide de SNA. Cette fonctionnalité permet aux applications d'accéder aux serveurs de base de données hôte ou iSeries à l'aide de SNA, mais avec une validation en une seule phase. * Le support Sysplex avec DB2 UDB pour z/OS n'est possible qu'en utilisant TCP/IP. Le support Sysplex n'est pas fourni à l'aide de la connectivité SNA. * La modification du mot de passe n'est plus prise en charge via la connectivité SNA avec les serveurs de bases de données hôte. * La prise en charge de SNA sera totalement supprimée de la prochaine version de DB2 UDB et DB2 Connect. Incident relatif au plug-in de sécurité et restriction concernant les clients DB2 UDB (Windows) Lors du développement de plug-ins de sécurité à déployer dans des clients DB2, sur des systèmes d'exploitation Windows, ne déchargez pas les bibliothèques auxiliaires dans la fonction d'arrêt du plug-in. Cette restriction s'applique à tous les types de plug-in de sécurité client, dont le groupe, l'ID utilisateur et le mot de passe, le kerberos et les plug-ins GSS-API. Cette restriction est due à un problème de déchargement des plug-ins de sécurité par DB2 Universal Database dans les clients DB2, sous Windows. Erreurs au cours du signalement d'une identification correcte lors d'une tentative de connexion (AIX) Dans le cadre d'une authentification au niveau du système d'exploitation AIX, DB2 Universal Database (UDB) tente de signaler la réussite d'une identification sous AIX si l'authentification a abouti. Dans les versions antérieures au FixPack 5 de la version 8, si DB2 UDB ne parvenait pas à signaler la réussite d'une identification, la connexion échouait même si l'utilisateur était bien authentifié. A compter du FixPack 5 de la version 8, la connexion est tout de même établie et l'erreur est consignée dans le fichier db2diag.log. ID utilisateur en deux parties non pris en charge (Windows ME) L'ID utilisateur en deux parties pour l'instruction CONNECT et la commande ATTACH, par exemple nom_domaine\nom_utilisateur, n'est pas pris en charge sous Windows ME. La page de chargement et d'importation de colonnes ne prend pas en charge les caractères à double octets dans les fichiers IXF Si vous utilisez l'assistant de chargement ou le bloc-notes d'importation pour configurer le chargement ou l'importation à partir d'un fichier d'entrée IXF contenant des caractères à double octet, la page Colonnes n'affiche pas correctement les noms de colonnes contenus dans le fichier. Outils d'interface graphique pour les systèmes d'exploitation Linux sur AMD64 Les outils d'interface graphique livrés avec DB2 Universal Database (UDB) sont des utilitaires graphiques basés sur Java. Voici quelques exemples d'outils d'interface graphique DB2 UDB : * Centre de contrôle * Centre de documentation * Programme d'aide à la configuration * Centre de développement Puisque les systèmes d'exploitation Linux sur AMD64 ne disposent pas actuellement de Java SDK ou Runtime Environment 64 bits, vous devez exécuter ces outils à partir d'une instance DB2 UDB 32 bits. Vous pouvez toujours utiliser ces outils pour gérer les bases de données des instances 64 bits locales et distantes. Par exemple, vous devez commencer par créer une instance 32 bits pour utiliser le Centre de contrôle. après la création d'une instance 32 bits, vous devez cataloguer manuellement l'instance 64 bits locale que vous souhaitez administrer. Vous trouverez plus d'informations sur DB2 pour Linux sur AMD64 à l'adresse suivante : http://www-1.ibm.com/support/ docview.wss?uid=swg450ec44e63a9da8f588256d8d004ff3ab Paramêtres d'affichage de base pour les outils d'interface graphique Pour pouvoir utiliser correctement les outils à interface graphique tels que le Centre de contrôle, vous avez besoin d'une résolution d'écran de 800 x 600 et d'une palette d'affichage de 32 couleurs au minimum. Affichage incorrect des caractères GB18030 dans la barre de titre d'une fenêtre Si des caractères de la norme de codage de caractères chinois GB18030 apparaissent dans la barre de titres d'une fenêtre, ils peuvent être affichés sous la forme de points d'interrogation ou de carrés. Ne partitionnez pas les tables du centre de catalogues d'informations Les tables utilisées par le gestionnaire de catalogues d'informations doivent se trouver dans une seule partition de base de données. Il existe plusieurs méthodes pour mettre les tables dans une seule partition. La procédure suivante est une approche efficace. 1. Ouvrez un interpréteur de commandes DB2 et exécutez les commandes suivantes : a. CREATE DATABASE PARTITION GROUP nom_groupe_partitions ON DBPARTITIONNUM numéro_partition b. CREATE REGULAR TABLESPACE nom_espace_table IN DATABASE PARTITION GROUP nom_groupe_partitions MANAGED BY SYSTEM USING ('nom_c') où nom_groupe_partitions est identique dans les deux commandes. 2. Cliquez sur Démarrer -> Programmes -> IBM DB2 -> Outils de configuration -> Assistant de gestion des catalogues d'informations. 3. Sur la page Options, indiquez le nom d'espace table dans la zone Espace table. Limitations de Query Patroller lorsque DYN_QUERY_MGMT est désactivé Query Patroller ne peut effectuer les actions qui suivent lorsque le paramêtre de configuration de base de données DYN_QUERY_MGMT est désactivé : * Libérer les requêtes d'une mise en suspens * Exécuter une requête en cours ou en attente à l'arrière-plan lorsqu'elle se trouve en avant-plan Si vous essayez de libérer une requête de la mise en suspens, ou de transformer une requête d'avant-plan en requête d'arrière-plan lorsque DYN_QUERY_MGMT est paramétré en DISABLE, un message d'erreur sera affiché et l'état de la requête ne sera pas modifié. Si les requêtes en suspens sont planifiées pour s'exécuter et que DYN_QUERY_MGMT est désactivé au moment où elles s'exécutent, un message d'erreur apparaît dans le fichier qpdiag.log et les requêtes sont laissées en suspens. Les tables de résultats Query Patroller utilisent désormais le schéma DB2QPRT A partir du FixPack 5, toutes les nouvelles tables de résultats sont créées dans le schéma DB2QPRT plutôt que dans le schéma de l'émetteur. Le privilège DROPIN du schéma DB2QPRT est accordé aux opérateurs dont les profils ont été créés avant l'installation de FixPack 5 et comportent l'un des privilèges suivants : * Le privilège MONITORING avec le droit d'édition * Le privilège HISTORICAL ANALYSIS avec le droit d'édition Le privilège DROPIN du schéma DB2QPRT est accordé la première fois que Query Patroller crée une table de résultats dans ce schéma. Les opérateurs disposant du privilège MONITORING avec droit d'édition ou le privilège HISTORICAL ANALYSIS avec droit d'édition après l'installation de FixPack 5 disposent également du privilège DROPIN sur le schéma DB2QPRT lors de la création ou mise à jour de leurs profils. Restrictions de l'indicateur de santé Le moniteur de santé ne peut pas exécuter d'actions pour l'indicateur de santé db2.db2_op_status si ce dernier est inactif. Cet état peut survenir, par exemple, lorsqu'une instance contrôlée par l'indicateur devient inactive en raison d'une demande d'arrêt explicite ou à un arrêt anormal. Pour que l'instance redémarre automatiquement après un arrêt anormal, vous devez configurer le moniteur pour que l'instance reste à l'état hautement disponible. problèmes et solutions connus Exportation vers un fichier IXF avec des index sur des colonnes contenant des caractères - et + Lorsque la commande export est lancée avec un format de fichier IXF et une clause SELECT *, les informations d'indexation sont collectées, le cas échéant. problème Si les noms de colonnes indiqués dans l'index contiennent des caractères - ou +, les informations d'indexation ne seront pas collectées et vous recevrez un code SQL SQL27984W. L'exportation se termine et les données exportées ne seront pas affectées. Toutefois, les informations d'indexation ne seront pas sauvegardées dans le fichier IXF. Solution palliative Si vous envisagez de recréer la table à l'aide de la commande import avec le paramêtre CREATE, les index ne seront pas recréés. Vous pouvez utiliser l'utilitaire db2look pour créer les index séparément. Erreur CLI0116E ou SQL0428N à l'appel de l'API db2ReadLog problème L'appel de l'API db2ReadLog à partir d'une application génère une erreur lorsque l'application se déconnecte de la base de données si une validation ou une instruction de récupération amont n'est pas effectuée avant la déconnexion : * Une erreur CLI0116E peut être générée si l'API db2ReadLog est appelée à partir d'une application CLI. * Une erreur SQL0428N peut être générée si l'API db2ReadLog est appelée à partir d'une application SQL imbriquée écrite dans C. Correctif 1 Pour les applications SQL non-imbriquées, activez le mode validation automatique avant d'appeler l'API db2ReadLog. Correctif 2 Lancez une instruction COMMIT ou ROLLBACK après avoir appelé l'API db2ReadLog et avant de vous déconnecter de la base de données. La commande "db2gcf -k" échoue sur DB2 UDB Workgroup Server Edition problème La commande db2gcf lance, arrête ou surveille une instance DB2 Universal Database (UDB), généralement à partir d'un script automatisé, comme dans un cluster à haute disponibilité (HA). L'exécution de la commande système db2gcf avec le paramêtre -k échoue dans DB2 UDB Workgroup Server. Solution palliative La commande "db2gcf -k" fonctionne uniquement dans DB2 UDB Enterprise Server Edition, et non dans DB2 UDB Workgroup Server Edition. Erreur SQL1224 d'un encapsuleur DRDA (AIX) Si un serveur DB2 Universal Database (UDB) 32 bits est installé sur un système AIX et qu'une application installée sur le même système comporte plusieurs connexions de base de données locales via l'encapsuleur DRDA, l'application peut alors renvoyer l'erreur suivante : SQL1822N Un code d'erreur "-1224" inattendu a été renvoyé par la source de données "W3_SERVER2". Associated text and tokens are func="DriverConnect" msg="SQL1224N Un agent de base de données n'a pas pu être démarré pour satisfaire une demande ou a été interrompu à la suite d'un arrêt normal du système ou d'une commande FORCE. " SQLSTATE=560BD Pour que cette erreur ne se produise pas, placez l'entrée suivante dans le fichier de configuration fédéré (répertoire_instance/cfg/db2dj.ini) : EXTSHM=ON Remarque : Lorsque vous ajoutez des entrées au fichier de configuration fédéré, vous devez arrêter puis redémarrer DB2 UDB pour que les modifications prennent effet. Par ailleurs, vous pouvez cataloguer la base de données DB2 UDB locale comme étant sur un noeud TCP/IP. Par exemple : CATALOG TCPIP NODE mon_noeud REMOTE mon_hôte SERVER 123; CATALOG DB mabd AT NODE mon_noeud; CREATE WRAPPER drda; CREATE SERVER mon serveur TYPE DB2/UDB VERsion 8 WRAPPER drda AUTHORIZATION "mon_id" PASSWORD "mon_mdp" OPTIONS(ADD DBNAME 'MYDB'); Les touches d'accès rapide ne fonctionnent pas dans Microsoft Visual Studio .NET Framework 1.1 Si les touches d'accès rapide ne fonctionnent pas dans Microsoft Visual Studio .NET Framework 1.1, vous pouvez télécharger un correctif sur le site Web de Microsoft. Le correctif est disponible dans la Microsoft Knowledge Base, article Q836745. Environnement local en chinois simplifié (AIX) AIX a modifié la page de codes associée à l'environnement local en chinois simplifié, Zh_CN, sous : * AIX version 5.1.0000.0011 ou ultérieure * AIX version 5.1.0 avec niveau de maintenance 2 ou ultérieur La page de codes a été modifiée de GBK (page de codes 1386) en GB18030 (page de codes 5488 ou 1392). Du fait que DB2 Universal Database (UDB) pour AIX prend en charge nativement la page de codes GBK et la page de codes GB18030 via Unicode, DB2 UDB définit par défaut la page de codes de l'environnement local Zh_CN en ISO 8859-1 (page de codes 819) et, dans certaines opérations, définira aussi Etats-Unis (US) comme pays par défaut de l'environnement local. Pour contourner cette limitation, vous disposez de deux solutions : * Vous pouvez remplacer la page de codes de l'environnement local, GB18030, par GBK et le pays, Etats-Unis, par Chine (dont l'ID est CN et le code, 86). * Vous pouvez utiliser un autre environnement local en chinois simplifié. Pour utiliser la première option, exécutez les commandes suivantes : db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Si vous décidez d'utiliser la deuxième option, remplacez l'environnement local Zh_CN par ZH_CN ou zh_CN. La page de codes de l'environnement local ZH_CN est Unicode (UTF-8), alors que celle de l'environnement local zh_CN est eucCN (page de codes 1383). Environnement local en chinois simplifié (Red Hat Linux) Red Hat, version 8 et suivantes (dont Red Hat Enterprise Linux [RHEL] versions 2.1 et 3), a remplacé la page de codes par défaut du chinois simplifié GBK (page de codes 1386) par GB18030 (page de codes 5488 ou 1392). Du fait que DB2 Universal Database (UDB) pour Linux prend en charge nativement la page de codes GBK et la page de codes GB18030 via Unicode, DB2 UDB définit par défaut sa page de codes en ISO 8859-1 (page de codes 819) et, dans certaines opérations, spécifiera aussi Etats-Unis (US) comme pays. Pour contourner cette limitation, vous disposez de deux solutions : * Vous pouvez remplacer la page de codes par défaut de Red Hat, GB18030, par GBK et le pays, Etats-Unis, par Chine (dont l'ID est CN et le code, 86). * Vous pouvez utiliser un autre environnement local en chinois simplifié. Pour utiliser la première option, exécutez les commandes suivantes : db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Pour utiliser la seconde option, exécutez l'une des commandes suivantes : export LANG=zh_CN.gbk export LANG=zh_CN export LANG=zh_CN.utf8 oà la page de codes associé à zh_CN est eucCN ou la page de codes 1383, et à zh_CN.utf8 est associée la page de codes 1208. Incompatibilité de Merant Driver Manager (UNIX) Des incompatibilités ont été détectées dans le cadre du support Unicode lorsque Merant Driver Manager accède au pilote ODBC DB2 sous UNIX. Ces incompatibilités peuvent entraîner Merant Driver Manager à utiliser Unicode, que l'application ait demandé ce format ou non. Cela peut poser des problèmes avec des composants tels que Data Warehouse Center, Information Catalog Manager et MQSI, qui nécessitent la prise en charge par Merant Driver Manager de sources de données non IBM. Vous pouvez utiliser une autre bibliothèque de pilotes ODBC DB2 sans activer le support Unicode jusqu'à ce qu'une solution définitive soit disponible. Une bibliothèque de pilotes ODBC DB2 sans support Unicode activé est fournie avec DB2 Universal Database (UDB) version 8.1 pour AIX, HP-UX et l'environnement d'exploitation Solaris. Pour utiliser cette bibliothèque, vous devez en créer une copie, en lui affectant le nom de la bibliothèque de pilotes ODBC DB2 d'origine. Remarque : L'autre bibliothèque (_36) contient les fonctions Unicode requises par le pilote JDBC DB2. L'utilisation de cette bibliothèque permet le fonctionnement des applications JDBC, notamment WebSphere Application Server, avec DB2 UDB. Pour utiliser la bibliothèque ODBC non Unicode sous AIX, HP-UX ou l'environnement d'exploitation Solaris, reportez-vous aux instructions ci-après. S'agissant d'un processus manuel, vous devez le réaliser à chaque mise à jour de votre produit, y compris après l'application de FixPacks successifs ou des niveaux de modification. Procédure AIX Pour créer la bibliothèque de remplacement sous AIX, procédez comme suit : 1. En vous connectant en tant que propriétaire de l'instance, arrêtez toutes les instances de la base de données à l'aide de la commande db2stop force. 2. En vous connectant sous l'ID de l'instance DAS (serveur d'administration DB2), arrêtez l'instance DAS à l'aide de la commande db2admin stop force. 3. Sauvegardez le fichier db2.o d'origine dans le répertoire /usr/lpp/db2_81/lib. 4. En tant qu'utilisateur root, exécutez la commande slibclean. 5. Copiez le fichier db2_36.o dans le fichier de sauvegarde db2.o, en vérifiant que les données de propriété et les droits restent cohérents. Utilisez les commandes suivantes : cp db2_36.o db2.o -r--r--r-- bin:bin for db2.o Pour revenir à l'objet d'origine, suivez la même procédure en utilisant le fichier de sauvegarde au lieu du fichier db2_36.o. Environnement d'exploitation Solaris Pour créer la bibliothèque de remplacement dans l'environnement d'exploitation Solaris, procédez comme suit : 1. En vous connectant en tant que propriétaire de l'instance, arrêtez toutes les instances de la base de données à l'aide de la commande db2stop force. 2. En vous connectant sous l'ID de l'instance DAS (serveur d'administration DB2), arrêtez l'instance DAS à l'aide de la commande db2admin stop force. 3. Sauvegardez le fichier libdb2.so.1 d'origine dans le répertoire /opt/IBMdb2/V8.1/lib. 4. Copiez le fichier libdb2_36.so.1 dans le fichier de sauvegardelibdb2.so.1, en vérifiant que les données de propriété et les droits restent cohérents. Utilisez les commandes suivantes : cp libdb2_36.so.1 libdb2.so.1 -r-xr-xr-x bin:bin libdb2.so.1 5. Exécutez la commande db2iupdt pour chaque instance de base de données et la commande dasupdt pour l'instance DAS. Pour revenir à l'objet d'origine, suivez la même procédure en utilisant le fichier de sauvegarde au lieu du fichier libdb2_36.so.1. HP-UX PA-RISC Pour créer la bibliothèque de remplacement sous HP-UX PA-RISC, procédez comme suit : 1. arrêtez toutes les instances de la base de données à l'aide de la commande db2stop force. 2. arrêtez l'instance DAS (serveur d'administration DB2), à l'aide de la commande db2admin stop force. 3. Sauvegardez le fichier libdb2.sl d'origine dans le répertoire /opt/IBMdb2/V8.1/lib. 4. Copiez le fichier libdb2_36.sl dans le fichier de sauvegardelibdb2.sl, en vérifiant que les données de propriété et les droits restent cohérents. Utilisez la commande suivante pour vérifier cette cohérence : cp libdb2_36.sl libdb2.sl -r-xr-xr-x bin:bin for libdb2.sl 5. Exécutez la commande db2iupdt pour chaque instance de base de données et la commande dasupdt pour l'instance DAS. Pour revenir à l'objet d'origine, suivez la même procédure en utilisant le fichier de sauvegarde au lieu du fichier libdb2_36.sl. HP-UX sous IA64 Pour créer la bibliothèque de remplacement sous HP-UX sous IA64, procédez comme suit : 1. arrêtez toutes les instances de la base de données à l'aide de la commande db2stop force. 2. arrêtez l'instance DAS (serveur d'administration DB2), à l'aide de la commande db2admin stop force. 3. Sauvegardez le fichier libdb2.so d'origine dans le répertoire /opt/IBMdb2/V8.1/lib. 4. Copiez le fichier libdb2_36.so dans le fichier de sauvegarde libdb2.so en vérifiant que les droits de propriété et d'accès restent cohérents. Utilisez la commande suivante pour vérifier cette cohérence : cp libdb2_36.so libdb2.so -r-xr-xr-x bin:bin pour libdb2.so 5. Exécutez la commande db2iupdt pour chaque instance de base de données et la commande dasupdt pour l'instance DAS. Pour revenir à l'objet d'origine, suivez la même procédure en utilisant le fichier de sauvegarde au lieu du fichier libdb2_36.so. Autres systèmes d'exploitation UNIX Veuillez prendre contact avec le support IBM si vous avez besoin d'assistance dans le cadre de l'utilisation de DB2 UDB et de Merant Driver Manager sur d'autres systèmes d'exploitation UNIX. NFS APAR IY32512 - Unités d'exécution non disponibles (AIX) L'APAR IY32512 NFS 5 AIX peut engendrer l'échec de la commande db2stop sur des systèmes dotés d'un grand nombre de partitions. Sur un serveur recevant un très grand nombre de demandes de groupage des verrous de fichiers déjà verrouillés, il est possible que le démon de verrouillage ne réponde plus. Cela se produit lorsque toutes les unités d'exécution verrouillées disponibles sont allouées à des unités d'exécution attendant que des verrous deviennent disponibles, par conséquent il ne reste aucune unité d'exécution disponible pour réaliser la tâche lorsque la demande de déverrouillage est effectuée. Lorsque cela se produit, les noeuds arrêtés doivent être redémarrés. Il existe une solution palliative DB2 Universal Database à cette situation, qui consiste à arrêter les noeuds un par un via l'option NODENUM de la commande db2stop. Erreur d'option de précompilation SQLFLAG(STD) Si l'option de précompilation SQLFLAG(STD) est activée, elle entraîne l'erreur suivante : Abend C6 occurred while running Precompile program DSNHPC (Un arrêt s'est produit pendant l'exécution du programme de précompilation DSNHPC) Supprimez l'option de précompilation SQLFLAG (STD) lors de l'utilisation du Centre de développement pour créer des procédures mémorisées SQL à exécuter sous DB2 Universal Database pour z/OS, version 8. Les pools de connexions doivent être activés lors de l'utilisation de Sysplex dans DB2 Connect problème Lorsque le membre du DDF connecté au groupe de partage de données sur OS390 est arrêté, DB2 Connect n'achemine pas les connexions vers un autre membre d'un DDF (Distributed Data Facility). Lorsque Sysplex est activé, DB2 Connect achemine les connexions vers un autre membre du DDF en fonction de la liste de serveurs. La version 8 de DB2 Connect Sysplex a été conçue pour le regroupement d'agents. La liste de serveurs Sysplex est libérée si elle ne contient pas d'agent ni de connexion à une base de données. Par conséquent, un agent au moins doit être conservé afin de maintenir la liste de serveurs Sysplex. Solution palliative Activez le regroupement de connexions en exécutant les commandes suivantes : db2 update dbm cfg using num_poolagents nombre db2stop db2start où nombre est le nombre maximal d'agents autorisés à être regroupés dans l'instance DB2. Le pool de connexion est activé lorsque le paramêtre nombre est supérieur à 0. Recommandation Définissez le paramêtre num_poolagents sur -1, qui constitue la moitié de la valeur attribuée dans le paramêtre de configuration maxagents Assistant personnalisé de DB2 Connect Bien qu'il soit présenté dans le manuel DB2 Connect User's Guide, l'assistant personnalisé de DB2 Connect n'est plus pris en charge dans la version 8.2. La création de la base de données du catalogue des outils échoue (HP-UX) problème Lors de l'installation de DB2 Universal Database (UDB) version 8.2 sous HP-UX, la commande CREATE TOOLS CATALOG échoue avec SQLCODE -22209 si elle est exécutée sous une instance 32 bits et si le paramêtre de configuration jdk_path de DB2 Administration Server pointe vers HP-UX SDK 1.4. Cet incident se produit parce que DB2 UDB version 8.2 installe par défaut HP-UX SDK 1.4 alors que l'instance 32 bits de la version 8.2 a besoin de HP-UX SDK 1.3 pour exécuter la commande CREATE TOOLS CATALOG. L'incident survient également lors de l'installation du FixPack 7 de DB2 UDB version 8.1 si vous avez mis à jour manuellement le paramêtre de configuration jdk_path du serveur d'administration DB2 pour qu'il pointe vers HP-UX SDK 1.4, ou si vous avez supprimé, puis recréé le serveur d'administration DB2 (DAS). L'incident survient parce que, dans un de ces cas, le paramêtre de configuration jdk_path pointe vers HP-UX SDK 1.4. Une instance 32 bits de DB2 UDB version 8.2 a besoin de HP-UX SDK 1.3 pour fonctionner. Correctif 1 Créez le catalogue des outils sous une instance 64 bits. Correctif 2 Créez le catalogue des outils sous une instance 32 bits en procédant comme suit : 1. Téléchargez HP-UX SDK 1.3 sur le site Web de HP-UX : http://www.hp.com/products1/unix/java/ 2. Installez HP-UX SDK 1.3. 3. Faites pointer le paramêtre de configuration jdk_path du serveur d'administration DB2 vers HP-UX SDK 1.3. Par exemple : db2 update admin config using JDK_PATH /opt/java1.3 4. Relancez le serveur d'administration DB2. db2admin stop db2admin start 5. Réexécutez la commande CREATE TOOLS CATALOG sous l'instance 32 bits. Affichage des caractères Indic dans les outils d'interface graphique de DB2 Si vous rencontrez des problèmes lors de l'affichage des caractères Indic quand vous utilisez les outils d'interface graphique de DB2, il se peut que vous n'ayez pas les bonnes polices sur votre poste. DB2 Universal Database (UDB) fournit les polices Indic proportionnelles IBM TrueType et OpenType suivantes. Ces polices figurent dans le répertoire polices sur l'un des CD suivants : * IBM Developer Kit, Java Technology Edition (64 bits) pour AIX 5L * Serveur d'applications DB2 intégré et applications (registre XML, outils d'administration Web et débogueur Java réparti) pour votre système d'exploitation Ces polices doivent être utilisées avec DB2 UDB uniquement. Vous ne pouvez pas entreprendre de vente ou de distribution générale de ces polices : Tableau 9. Polices Indic fournies avec DB2 UDB +-----------------------+----------------------+----------------------+ | Famille | Poids | Nom du fichier de | | | | police | +-----------------------+----------------------+----------------------+ | Devanagari MT pour | Moyen | devamt.ttf | | IBM | | | +-----------------------+----------------------+----------------------+ | Devanagari MT pour | Gras | devamtb.ttf | | IBM | | | +-----------------------+----------------------+----------------------+ | Tamil | Moyen | TamilMT.ttf | +-----------------------+----------------------+----------------------+ | Tamil | Gras | TamilMTB.ttf | +-----------------------+----------------------+----------------------+ | Telugu | Moyen | TeluguMT.ttf | +-----------------------+----------------------+----------------------+ | Telugu | Gras | TeleguMTB.ttf | +-----------------------+----------------------+----------------------+ Vous trouverez des instructions détaillées sur l'installation des polices et la façon de modifier le fichier font.properties dans la section Internationalisation de la documentation du kit de développement IBM pour Java. De plus, les produits Microsoft suivants sont livrés avec des polices Indic utilisables avec les outils d'interface graphique DB2 : * système d'exploitation Microsoft Windows 2000 * système d'exploitation Microsoft Windows XP * Microsoft Publisher * Microsoft Office Outils d'interface graphique non pris en charge pour les serveurs zSeries (Linux) Hormis l'assistant d'installation de DB2, les outils d'interface graphique ne fonctionnent pas sur les serveurs zSeries exécutant le système d'exploitation Linux. Cette restriction porte sur tous les éléments pouvant être normalement lancés à partir du tableau de bord d'installation, comme le Tour d'horizon. Si vous voulez utiliser les outils d'interface graphique avec l'un de ces systèmes, installez les outils d'administration sur un système client ayant une configuration système différente et utilisez ce client pour vous connecter au serveur zSeries. Placer les termes recherchés dans le Centre de documentation DB2 entre guillemets s'ils contiennent des nombres Pour obtenir des résultats de recherche plus précis dans le Centre de documentation DB2, vous devez placer les termes recherchés contenant des nombres entre guillemets. Par exemple, si vous recherchez le terme suivant, vous n'obtenez aucun résultat : 1.4.1 Mais si vous placez ce terme entre guillemets, les résultats souhaités s'affichent : "1.4.1" La recherche du terme ci-après renvoie des rubriques supplémentaires : DB20000I Mais la recherche suivante fonctionne correctement : "DB20000I" Fichier journal du Centre de gestion des catalogues d'informations non généré lors de l'importation des fichiers de langage de marques Si un fichier journal du Centre de gestion des catalogues d'informations n'est pas généré lors de l'importation des fichiers de langage de marques vers le Centre de gestion des catalogues d'informations, effectuez l'une des étapes de résolution d'incident suivantes : Lors de l'exécution de db2icmimport à partir de la ligne de commande : * Si aucun fichier de sortie n'a été généré (.xml, .out, .err, .log), il y a probablement une erreur sur la ligne de commande. Vérifiez que les cinq premiers arguments (UserId, Password, Database, Catalog et Tagfile) sont corrects. Visualisez la syntaxe en entrant la commande db2icmimport. Si cela ne résout pas le problème, modifiez db2icmimport pour capturer la sortie de db2javit à l'aide de l'option -g pour sauvegarder la sortie dans un fichier. Par exemple : db2javit -j:com.ibm.db2.common.icm.tag.IcmImport -w: -i: -o:"-Xmx128m -Xms32m" -g:"d:\temp\myimport.trc" ... * Si aucun fichier journal n'a été généré, il y a généralement une erreur d'analyse. Recherchez les fichiers .xml et .out. Si vous le pouvez, insérez une commande ":COMMIT.CHKPID(DEBUG)" au début du fichier de langage de marques. Cette commande génère des messages de rapport de débogage et recherche les erreurs d'analyse dans les fichiers .xml et .out. * après l'analyse, les erreurs doivent apparaître dans le fichier .log. Lorsque le rapport de débogage est généré, consultez les fichiers .log et .out pour obtenir des informations. * Consultez toujours le fichier .err pour savoir si une erreur d'exécution s'est produite. Lors de l'importation des fichiers de langage de marques à l'aide de l'interface graphique du Centre de gestion des catalogues d'informations : * Lorsque vous importez des fichiers de langage de marques à l'aide de l'interface graphique, aucun fichier .out ou .err n'est généré. * Si un fichier .log ou .xml est généré, tentez de procéder au débogage à l'aide de ces fichiers. * Si aucun de ces fichiers n'est généré ou s'ils ne sont d'aucune aide, exécutez le processus d'importation à partir de la ligne de commande pour obtenir plus d'informations. Définition des accès aux modules Query Patroller Si la définition des accès aux modules de Query Patroller n'est pas effectuée après l'application d'un FixPack, le message d'erreur ci-après peut s'afficher lorsqu'un utilisateur sans droit DBADM ni privilège Query Patroller adéquat utilise le Centre Query Patroller ou la ligne de commande Query Patroller : SQL0001N - La définition des accès (BIND) ou la précompilation n'a pas abouti. Si vous utilisez le Centre Query Patroller, l'erreur SQL0001N est consignée dans le fichier qpdiag.log. Si vous utilisez la ligne de commande Query Patroller, le message SQL0001N est renvoyé à la console Le code de définition d'accès automatique permet de lancer la définition d'accès automatique. Cependant cette dernière échoue lorsque l'utilisateur connecté ne dispose pas des privilèges nécessaires pour exécuter toutes les instructions dans les modules Query Patroller. Le fait que des dossiers manquent dans le Centre Query Patroller est l'un des symptômes de ce problème. Pour éviter ce problème, la définition des accès aux modules qpserver.lst doit être effectuée manuellement par un utilisateur doté du droit DBADM ou des privilèges nécessaires après l'application d'un FixPack. Indisponibilité des ports avec Query Patroller (Windows) problème Les requêtes soumises dans Query Patroller peuvent recevoir un code SQL -29007 lorsqu'aucun port n'est disponible sous Windows XP ou Windows 2003. La probabilité de cette erreur augmente au fur et à mesure du nombre croissant de clients qui accèdent à Query Patroller. Solution palliative Les variables de registre Windows à définir sont les suivantes : MaxUserPort=65534 TcpTimedWaitDelay=30 puis redémarrez votre système pour que les modifications prennent effet. Vous trouverez des informations détaillées concernant la configuration des variables de registre Windows sur le site Web Aide et support de Microsoft à l'adresse suivante : http://support.microsoft.com/. Environnements sécurisés (Windows) Des problèmes de droit d'accès aux fichiers peuvent survenir si vous utilisez DB2 Universal Database (UDB) sous Windows sans être l'administrateur du système Windows. Si vous recevez un message d'erreur SQL1035N, SQL1652N ou SQL5005C, les causes possibles d'erreur ainsi que les solutions palliatives sont présentées ci-après : L'utilisateur ne possède pas les droits d'accès suffisants sur le répertoire sqllib problème L'utilisateur reçoit une erreur SQL1035N ou SQL1652N lors d'une tentative d'ouverture de DB2 CLP ou de la fenêtre de commande. Le code DB2 UDB (fichiers core) est installé dans une structure de répertoires dans laquelle les droits d'écriture sont limités, alors que certains outils DB2 UDB ont besoin d'écrire et de créer des fichiers dans le répertoire DB2INSTPROF. Solution palliative Créez un nouveau répertoire dans lequel vous pouvez accordez au minimum le droit de MODIFICATION aux utilisateurs et utilisez db2set -g db2tempdir pour pointer vers ce nouveau répertoire, ou définissez la variable db2tempdir dans l'environnement de système Windows. Droits insuffisants pour écrire dans le répertoire sqllib\ même pour les utilisateurs appartenant au groupe SYSADM_GROUP problème L'utilisateur reçoit une erreur système SQL5005C lors d'une tentative de mise à jour du fichier de configuration de la base de données (update dbm cfg). L'utilisateur ne dispose pas des droits NTFS suffisants pour écrire dans le répertoire sqllib\rép_instance même si l'utilisateur appartient au groupe SYSADM_GROUP. Première solution palliative Attribuez aux utilisateurs, au minimum, le droit de MODIFICATION du répertoire rép_instance au niveau du système de fichiers. Deuxième solution palliative Créez un nouveau répertoire dans lequel vous attribuez à l'utilisateur, au minimum, le droit de MODIFICATION. Utilisez la commande db2set db2instprof pour pointer sur le nouveau répertoire. Vous devrez soit recréer une instance de manière à enregistrer les informations sous le nouveau répertoire de l'instance indiqué par db2instprof, soit déplacer l'ancien répertoire de l'instance vers le nouveau répertoire. Exemples de programmes d'Extension XML renommés Certains programmes exemples de l'Extension XML ont le même nom que d'autres programmes installés. Or l'appel par erreur d'un autre programme du même nom qu'un programme exemple de l'Extension XML peut endommager vos fichiers XML. La liste suivante recense les anciens programmes exemples de l'Extension XML, ainsi que les noms de nouveaux programmes de remplacement moins à même de provoquer des incompatibilités. Veillez bien à utiliser les noms des nouveaux programmes exemples et non les anciens afin de ne pas endommager vos fichiers XML. Tableau 10. Programmes exemples de remplacement de l'Extension XML (Windows) +----------------------------------+----------------------------------+ | Ancien programme (Ne pas | Nouveau programme (A utiliser) | | utiliser) | | +----------------------------------+----------------------------------+ | insertx.exe | dxxisrt.exe | +----------------------------------+----------------------------------+ | retrieve.exe | dxxretr.exe | +----------------------------------+----------------------------------+ | retrieve2.exe | dxxretr2.exe | +----------------------------------+----------------------------------+ | retrievec.exe | dxxretrc.exe | +----------------------------------+----------------------------------+ | shred.exe | dxxshrd.exe | +----------------------------------+----------------------------------+ | tests2x.exe | dxxgenx.exe | +----------------------------------+----------------------------------+ | tests2xb.exe | dxxgenxb.exe | +----------------------------------+----------------------------------+ | tests2xc.exe | dxxgenxc.exe | +----------------------------------+----------------------------------+ Tableau 11. Programmes exemples de remplacement de l'Extension XML (Linux et UNIX) +----------------------------------+----------------------------------+ | Ancien programme (Ne pas | Nouveau programme (A utiliser) | | utiliser) | | +----------------------------------+----------------------------------+ | insertx | dxxisrt | +----------------------------------+----------------------------------+ | retrieve | dxxretr | +----------------------------------+----------------------------------+ | retrieve2 | dxxretr2 | +----------------------------------+----------------------------------+ | retrievec | dxxretrc | +----------------------------------+----------------------------------+ | shred | dxxshrd | +----------------------------------+----------------------------------+ | tests2x | dxxgenx | +----------------------------------+----------------------------------+ | tests2xb | dxxgenxb | +----------------------------------+----------------------------------+ | tests2xc | dxxgenxc | +----------------------------------+----------------------------------+ Utilisation des nouveaux programmes exemples avec les fichiers exemples sqx Le code source (fichiers .sqx) pour les exécutables listés précédemment se trouve dans le répertoire samples\db2xml\c de votre installation. Les fichiers source sont toujours libellés avec leurs anciens noms. Si vous effectuez des changements dans le code source, copiez les exécutables nouvellement compilés (avec les anciens noms) dans le répertoire sqllib\bin. Sous Windows, vous devez effectuer une copie supplémentaire, la renommer à l'aide du nouveau nom indiqué ci-dessus et la copier dans le répertoire bin. Les deux copies remplacent les fichiers existants dans le répertoire bin. Par exemple, après la compilation de la nouvelle version de shred.exe, vous devez effectuer deux copies et remplacer les fichiers dans le répertoire bin : un libellé shred.exe et l'autre renommé dxxshrd.exe. Sur les plateformes Linux et UNIX, il vous suffit de remplacer le fichier portant l'ancien nom par la version nouvellement compilée. Si vous créez des fichiers exécutables à partir de ces modèles, vous devez copier les nouveaux fichiers du répertoire \SQLLIB\samples\db2xml\c\ vers le répertoire \SQLLIB\bin\ puis en faire une copie supplémentaire et les renommer comme indiqué dans le tableau précédent. Décomposition de documents dans l'Extension XML contenant des attributs et des noms d'élément non uniques Vous pouvez désormais décomposer des documents contenant des attributs ou des noms d'éléments non uniques qui mappent vers des colonnes différentes (de tables identiques ou différentes) sans recevoir l'erreur DXXQ045E. L'exemple suivant est celui d'un document XML comportant des attributs et des noms d'éléments non uniques : John Smith Jane Doe xxxx-xxxx 2 12.50 yyyy-yyyy 4 24.99 Le fichier DAD d'accompagnement qui mappe les éléments et attributs en double vers différentes colonnes, ressemble à ce qui suit :
order_tab.order_id=detail_tab.order_id
detail_tab" />
Le contenu des tables ressemble à l'exemple qui suit, une fois le document ci-dessus décomposé : ORDER _TAB: ORDER_ID CUST_ID CUST_NAME SALESP_ID SALESP_NAME 0001-6789 1111 John Smith 1234 Jane Doe DETAIL_TAB: ORDER_ID ITEMNO QUANTITY UNIT_PRICE 0001-6789 xxxx-xxxx 2 12.50 0001-6789 yyyy-yyyy 4 24.99 Remarque : Afin de mapper des éléments et attributs multiples vers la même colonne de la même table, définissez un alias pour la table et utilisez-le dans l'élément DAD
d'un des mappages. Différences entre SNA et TCP/IP lors de l'utilisation de DB2 Connect Lors d'une connexion à un système OS/390 via SNA, la couche VTAM hôte émet automatiquement une validation à l'établissement de chaque nouvelle connexion. Avec cette validation automatique, l'unité d'exécution côté hôte passe immédiatement à l'état inactif. En revanche, lorsque la connexion à un système OS/390 s'effectue via TCP/IP, il n'existe pas de validation automatique. C'est l'application elle-même qui doit émettre une validation explicite une fois la connexion établie pour que l'unité d'exécution côté hôte passe à l'état inactif. Sans cette validation explicite, l'unité d'exécution risque de basculer à l'état de veille passé un certain délai. La solution proposée consiste à réécrire l'application de sorte qu'elle exécute une validation explicite au cas oà la connexion, une fois établie, passe à l'état de veille. mises à jour de la documentation Les marques de révision signalent le texte qui a été ajouté ou modifié. Une barre verticale ( | ) indique des informations ajoutées ou modifiées pour la version 8.2, FixPak 4 (équivalente de la version 8.1, FixPak 11). Administration: Implementation Configuration de la redirection automatique du client (DB2_MAX_CLIENT_CONNRETRIES et DB2_CONNRETRIES_INTERVAL) Par défaut, la fonction de redirection automatique du client effectue de nouvelles tentatives de connexion à une base de données plusieurs fois pendant 10 minutes. Toutefois, vous pouvez configurer un comportement de relance précis à l'aide de l'une ou des deux variables de registre suivantes : * DB2_MAX_CLIENT_CONNRETRIES : Nombre maximum de tentatives de relance de connexion par la redirection automatique du client. * DB2_CONNRETRIES_INTERVAL : Temps d'inactivité entre les tentatives de connexion consécutives, en seconde. Si DB2_MAX_CLIENT_CONNRETRIES est défini, mais que DB2_CONNRETRIES_INTERVAL ne l'est pas, le paramêtre DB2_CONNRETRIES_INTERVAL est défini sur 30 par défaut. Si DB2_MAX_CLIENT_CONNRETRIES n'est pas défini alors que DB2_CONNRETRIES_INTERVAL l'est, le paramêtre DB2_MAX_CLIENT_CONNRETRIES est défini sur 10 par défaut. Si aucun des paramêtres DB2_MAX_CLIENT_CONNRETRIES et DB2_CONNRETRIES_INTERVAL n'est défini, la fonction de redirection automatique du client reprend son comportement par défaut décrit précédemment. Remarque : Les utilisateurs de connectivité de type 4 avec le pilote JDBC DB2 Universal doivent utiliser les deux propriétés de source de données suivantes afin de configurer la redirection automatique du client : * maxRetriesForClientReroute : Cette propriété permet de limiter le nombre de relances en cas d'échec de la première connexion au serveur. Elle est utilisée uniquement si la propriété retryIntervalClientReroute est également définie. * retryIntervalForClientReroute : Cette propriété permet d'indiquer la période d'attente (en seconde) avant une nouvelle tentative de relance. Elle est utilisée uniquement si la propriété maxRetriesForClientReroute est également définie. Précisions sur la variable de registre DB2TIMEOUT La variable de registre DB2TIMEOUT n'est plus prise en charge. Ce paramêtre permettait de contrôler le délai d'inactivité pour les clients Windows 3.x et Macintosh au cours des longues requêtes SQL. Il a été désactivé par défaut. Répertoires créés au cours de la création de conteneur d'espace table Lors de la création de conteneurs d'espace table, DB2 UDB crée tous les niveaux de répertoire qui n'existent pas. Par exemple, si un conteneur est indiqué comme /project/user_data/container1 et que le répertoire /project n'existe pas, DB2 UDB crée les répertoires /project et /project/user_data. A compter de la version 8.2 de DB2 UDB, FixPak 4, tous les répertoires sont créés par DB2 UDB à l'aide de la fonction PERMISsion 700. Cela signifie que seul le propriétaire dispose des droits d'accès en lecture, en écriture et en exécution. Lors de la création d'instances multiples, le scénario suivant s'applique : 1. Pour une structure de répertoire identique à celle indiquée ci-dessus, supposons que les niveaux /project/user_data n'existent pas. 2. L'utilisateur 1 crée une instance, appelée user1 par défaut, puis il crée une base de données et un espace table avec /project/user_data/container1 comme un de ses conteneurs. 3. L'utilisateur 2 crée une instance, appelée user2 par défaut, puis il crée une base de données et tente de créer un espace table avec /project/user_data/container2 comme un de ses conteneurs. Puisque DB2 UDB a créé des niveaux de répertoire /project/user_data avec PERMISsion 700 à la première requête, l'utilisateur 2 ne dispose pas des droits d'accès à ces niveaux de répertoire et ne peut pas créer de container2 dans ces répertoires. Dans ce cas, l'opération CREATE TABLESPACE échoue. Deux méthodes permettent de résoudre ce conflit : 1. Il suffit de créer le répertoire /project/user_data avant de créer les espaces table et d'autoriser ensuite tout accès nécessaire aux utilisateurs 1 et 2 pour créer des espaces table. Si tous les niveaux d'un répertoire d'espace table existent, DB2 UDB n'en modifie pas l'accès. 2. Une fois que l'utilisateur 1 a créé /project/user_data/container1, autorisez l'utilisateur 2 à accéder à /project/user_data afin de créer un espace table. Stockage automatique Le format des noms pour les conteneurs a été modifié de telle sorte que l'ID espace table et l'ID conteneur ont également été modifiés. Le nouveau format est le suivant : //NOEUD#### /T####### /C#######. où : * /T####### est l'ID espace table. Par exemple, T0000003. * /C####### est l'ID conteneur. Par exemple, C0000012. Définition d'une colonne générée sur une table existante Avec la version 8.2.2 de DB2 Universal Database (équivalent de la version 8.1, FixPak 9), les colonnes générées peuvent désormais être utilisées dans des index à entrées uniques. Les colonnes générées ne peuvent pas être utilisées dans les contraintes, les contraintes référentielles, les clés primaires et les tables temporaires globales. Une table créée avec LIKE et des vues matérialisées n'hérite pas des propriétés de colonne générée. Agrégation des variables de registre Lorsque vous avez défini DB2WORKLOAD=SAP, l'espace table utilisateur SYSTOOLSPACE et l'espace table utilisateur temporaire SYSTOOLSTEMPSPACE ne sont pas créés automatiquement. Ces espaces table sont utilisés pour les tables créées automatiquement par les assistants, utilitaires ou fonctions suivants : * Maintenance automatique * Assistant de conception * Ecran d'informations de base de données Centre de contrôle * Procédure mémorisée SYSINSTALLOBJECTS, si le paramêtre d'entrée d'espace table n'est pas indiqué. * Procédure mémorisée GET_DBSIZE_INFO. Sans les espaces table SYSTOOLSPACE et SYSTOOLSTEMPSPACE, vous ne pouvez pas utiliser ces assistants, utilitaires ou fonctions. Pour pouvoir utiliser les assistants, utilitaires ou fonctions, effectuez l'une des opérations suivantes : * Créez manuellement SYSTOOLSPACE (sur le noeud catalogue uniquement, si vous utilisez DPF). Par exemple : CREATE REGULAR TABLESPACE SYSTOOLSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSPACE') * Appelez SYSINSTALLOBJECTS pour créer les objets, en indiquant un espace table valide pour chacun des noms d'outils suivants : "DB2AC", "POLICY" et " STMG_DBSIZE_INFO". après avoir effectué au moins l'une de ces opérations, créez un espace table utilisateur temporaire (sur le noeud catalogue uniquement, si vous utilisez DPF). Par exemple : CREATE USER TEMPORARY TABLESPACE SYSTOOLSTMPSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSTMPSPACE') dès que l'espace table SYSTOOLSPACE et l'espace table temporaire SYSTOOLSTEMPSPACE sont créés, vous pouvez utiliser les assistants, utilitaires ou fonctions mentionnés ci-avant. Remarques concernant l'authentification des clients distants Le type d'authentification DATA_ENCRYPT_CMP permet aux clients d'une édition antérieure qui ne prend pas en charge le chiffrement de données de se connecter à un serveur à l'aide de l'authentification SERVER_ENCRYPT au lieu de DATA_ENCRYPT. Cette authentification n'est pas possible dans les cas ci-dessous : * Le niveau du client correspond à la version 7.2. * Le niveau de la passerelle correspond à Version 8 FixPack 7 ou suivant. * Le serveur correspond à Version 8 FixPack 7 ou suivant. Dans ce cas, le client ne peut pas se connecter au serveur. Pour permettre la connexion, mettez votre client à jour en fonction de la version 8, ou mettez la passerelle à niveau en fonction de Version 8 FixPack 6 ou antérieur. Prise en charge des E-S en accès direct (DIO) et des E-S concurrents (CIO) Les entrées-sorties en accès direct (DIO) améliorent les performances de la mémoire car celle-ci ignore la mise en cache au niveau du système de fichiers. Ceci a pour effet de réduire la charge de l'UC et de libérer de la mémoire pour l'instance de la base de données. Les entrées-sorties concurrentes (CIO) présentent les mêmes avantages que les DIO et allègent la sérialisation des accès en écriture. DB2 Universal Database (UDB) prend en charge les DIO et les CIO sous AIX ; et les DIO sous HP-UX, dans l'environnement d'exploitation Solaris, sous Linux et Windows. Les mots clés NO FILE SYSTEM CACHING et FILE SYSTEM CACHING font partie des instructions SQL CREATE et ALTER TABLESPACE pour vous permettre d'indiquer si les DIO ou les CIOdoivent être utilisées sur chaque espace table. Lorsque NO FILE SYSTEM CACHING est actif, DB2 UDB tente d'utiliser les E-S concurrentes chaque fois que cela est possible. Dans les cas où les CIO ne sont pas prises en charge (par exemple, si JFS est utilisé), le mode DIO est utilisé à la place. Pour plus d'informations, voir l'article "Improve database performance on file system containers in IBM DB2 UDB Stinger using Concurrent I/O on AIX" à l'adresse suivante : http://www.ibm.com/developerworks/db2/library/techarticle/dm-0408lee/ Technologie du distributeur et redirection automatique des clients Les informations suivantes sont extraites du guide Administration Guide: Implementation, Annexe B "Using automatic client rerouting": Dans DB2 Universal Database pour Linux, UNIX, et Windows, la fonction de redirection automatique du client permet aux applications client de récupérer à la suite d'une perte de communication avec le serveur (en rétablissant automatiquement la connexion base de données-serveur-client) et de continuer à fonctionner après une interruption minimale. En cas d'échec de la connexion client/serveur, les demandes de connexion du client sont transmises à un ensemble de systèmes par un distributeur ou un répartiteur comme WebSphere EdgeServer Vous pouvez utiliser la technologie de distribution (Distributor Technology) dans un environnement semblable au suivant : Client --> Distributor Technology --> (DB2 Connect Server 1 ou DB2 Connect Server 2) --> DB2 z/OS où : * Le nom d'hôte TCP/IP du composant Distributor Technology est DThostname * Le nom d'hôte TCP/IP de DB2 Connect Server 1 est GWYhostname1 * Le nom d'hôte TCP/IP de DB2 Connect Server 2 est GWYhostname2 * Le nom d'hôte TCP/IP du serveur DB2 z/OS est zOShostname Le client est catalogué à l'aide de DThostname afin d'utiliser la technologie de distribution pour accéder à l'un des serveurs DB2 Connect. La technologie en question opte pour l'utilisation de GWYhostname1 ou de GWYhostname2. Une fois ce choix arrêté, le client dispose d'une connexion socket directe vers l'une de ces deux passerelles DB2 Connect. Lorsque la connectivité par socket est établie vers le serveur DB2 Connect, une connectivité typique client - serveur DB2 Connect - DB2 z/OS est instaurée. Supposons, par exemple, que le distributeur choisisse GWYhostname2. On obtient l'environnement suivant : Client --> Serveur 2 DB2 Connect --> DB2 z/OS En cas d'échec de la communication, le distributeur n'essaye pas de la rétablir. Pour activer la fonction de redirection automatique du client d'une base de données dans ce type d'environnement, le serveur de remplacement de la base de données (ou des BD) associée de DB2 Connect Server (DB2 Connect Server 1 ou DB2 Connect Server 2) doit être configuré en tant que distributeur (DThostname). Ainsi, en cas de blocage de DB2 Connect Server 1, la fonction de redirection automatique du client est déclenchée et de nouvelles tentatives de connexion ont lieu entre le client et le distributeur (serveur 1 ou serveur 2). Cette option permet de combiner et de gérer les fonctions du distributeur avec la fonction de redirection automatique du client de DB2. L'attribution au serveur de remplacement d'un autre nom d'hôte que celui du distributeur ne désactive pas la fonction de redirection automatique du client, mais le client établira des connexions directes avec le serveur de remplacement et n'utilisera pas la technologie de distribution, ce qui dépouille le distributeur de toute utilité. La fonction de redirection automatique du client intercepte les codes sql suivants : * sqlcode -20157 * sqlcode -1768 (code anomalie = 7) Considérations relatives à la redirection automatique du client pour le catalogage sur un serveur DB2 Connect Tenez compte des éléments ci-dessous impliquant une connectivité de serveur de remplacement avec le serveur DB2 Connect : * La première considération concerne l'utilisation du serveur DB2 Connect pour offrir un accès à un hôte ou à une base de données iSeries pour le compte des clients locaux et éloignés. Dans de telles situations, les informations de connectivité du serveur de remplacement peuvent porter à confusion dans une entrée du répertoire système des bases de données. Pour limiter cette confusion, pensez à cataloguer deux entrées dans le répertoire système des bases de données afin de représenter le même hôte ou la base de données iSeries. Cataloguez une entrée pour les clients éloignés et une autre pour les clients locaux. * Ensuite, les informations du serveur de remplacement renvoyées d'un serveur cible sont conservées dans la mémoire cache uniquement. A la fin du processus DB2, les informations de la mémoire cache, et par voie de conséquence celles du serveur de remplacement, sont perdue. Support du compte système local (Windows) Les applications qui s'exécutent dans le cadre d'un compte système local (LSA) sont prises en charge sur toutes les plateformes Windows, à l'exception de Windows ME. Support de l'ID utilisateur en deux parties L'instruction CONNECT et la commande ATTACH prennent en charge les ID utilisateur en deux parties. Le qualificatif de l'ID utilisateur compatible SAM est le nom de style NetBIOS dont la longueur maximale est de 15 caractères. Cette fonction n'est pas prise en charge sous Windows ME. Détails d'authentification Kerberos Principaux Kerberos et client Vous pouvez remplacer le nom principal du serveur Kerberos utilisé par le serveur DB2 Universal Database (UDB) sous les systèmes d'exploitation UNIX et Linux. Pour ce faire, définissez la variable d'environnement DB2_KRB5_PRINCIPAL avec le nom principal souhaité entièrement qualifié pour le serveur. L'instance doit être redémarrée, le nom principal du serveur étant reconnu par DB2 UDB uniquement après que la commande db2start a été exécutée. Informations supplémentaires pour le support Kerberos Composants prérequis Linux La documentation fait état des composants prérequis du support Linux Kerberos de manière imprécise. Le plug-in de sécurité Kerberos DB2 fourni est pris en charge avec Red Hat Enterprise Linux Advanced Server 3 avec le client IBM Network Authentication Service (NAS) 1.4. Compatibilité zSeries et iSeries Pour les connexions à zSeries et iSeries, la base de données doit être cataloguée avec le paramêtre AUTHENTICATION KERBEROS et le nom de paramêtre TARGET PRINCIPAL doit être précisé de manière explicite. Ni zSeries ni iSeries ne prennent en charge l'authentification mutuelle. Incidents Windows * Etant donné la manière dont Windows détecte et rapporte les erreurs, les conditions suivantes entraînent une erreur imprévue liée au plug-in de sécurité client (SQL30082N, rc=36) : * Compte expiré * Mot de passe invalide * Mot de passe expiré * Modification du mot de passe provoquée par l'administrateur * Compté désactivé En outre, dans tous les cas, le journal d'administration de DB2 ou le fichier db2diag.log indique que la connexion n'a pas abouti ou qu'elle est refusée. * Si un nom de compte de domaines est également défini en local, les connexions qui précisent de manière explicite le nom de domaine et le mot de passe n'aboutissent pas, avec l'erreur suivante : Impossible de contacter l'autorité de sécurité locale L'erreur est due au fait que Windows localise l'utilisateur local en premier. La solution est de qualifier intégralement l'utilisateur dans la chaîne de connexion. Par exemple : nom@DOMAINE.IBM.COM * Les comptes Windows ne peuvent pas inclure le caractère @ dans leur nom car ce caractère est considéré comme le séparateur de domaine par le plug-in DB2 Kerberos. * Lorsque vous interagissez avec une plateforme non Windows, assurez-vous que tous les comptes du serveur de domaine Windows et que tous les comptes client Windows sont configurés de façon à utiliser le chiffrement DES. Si le compte utilisé pour démarrer le service DB2 n'est pas configuré pour utiliser le chiffrement DES, le serveur DB2 n'acceptera pas les contextes Kerberos. En particulier, DB2 Universal Database échouera avec une erreur imprévue de plug-in serveur et consignera l'information selon laquelle l'API AcceptSecurityContext a renvoyé SEC_I_CONTINUE_NEEDED (0x00090312L). Pour déterminer si les comptes Windows sont configurés pour utiliser le chiffrement DES, voir Propriétés du compte dans Répertoire actif. Il peut s'avérer nécessaire de redémarrer le système si les propriétés du compte ont été modifiées. * Si le client et le serveur sont installés sous Windows, le service DB2 peut être démarré sous le compte système local. Toutefois, si le client et le serveur se trouvent dans des domaines différents, la connexion peut échouer avec une erreur de nom principal de la cible incorrect. La solution palliative est de cataloguer de manière explicite le nom principal de la cible sur le client à l'aide du nom d'hôte du serveur complet et du nom de domaine complet, au format suivant : hôte/@ Par exemple : hôte/monhôte.domain.ibm.com@DOMAIN.IBM.COM Sinon, vous devez démarrer le service DB2 sous un compte de domaines valide. Administration : Performances Comparaison de la variable de registre DB2_FORCE_FCM_BP dans des environnements 32 bits et 64 bits Lorsque vous activez la variable de registre DB2_FORCE_FCM_BP, le nombre de segments de mémoire partagée disponibles pour d'autres usages diminue, et notamment en ce qui concerne les pools de mémoire tampon des bases de données. Par conséquent, l'activation de cette variable de registre réduit la taille maximale des pools de mémoire tampon des bases de données. Cette réduction du nombre de segments s'avère être un problème spécifique aux environnements 32 bits puisque les environnements 64 bits disposent d'un grand nombre de segments de mémoire partagée. Actualisation des statistiques RUNSTATS après la création de table Lorsqu'une table est créée, les statistiques du catalogue système sont définies sur -1 afin d'indiquer que la table n'a pas encore de statistiques. DB2 UDB utilise les valeurs par défaut pour l'optimisation et la compilation des instructions SQL jusqu'à ce que des statistiques soient recueillies. La mise à jour de la table ou des statistiques d'index peut échouer si les nouvelles valeurs sont incohérentes avec les valeurs par défaut. Par conséquent, exécutez la commande runstats sur une table ou un index avant de mettre à jour manuellement les statistiques de l'une ou l'autre. Nouveau code raison pour SQL1169N Le message d'erreur SQL SQL1169N dispose d'un nouveau code raison 5 afin d'indiquer qu'une table EXPLAIN contient une colonne trop petite. * Explication du code raison 5 : Une table EXPLAIN contient une colonne trop petite. Le journal db2diag.log doit contenir des messages identifiant le nom du schéma, le nom de table et le nom de la colonne ainsi que la taille de la colonne nécessaire pour recevoir les données générées par la fonction EXPLAIN. * Intervention de l'utilisateur : Vous devez vérifier si la taille requise de la colonne s'adapte à votre table et à votre base de données. Dans l'affirmative, augmentez la taille de la colonne à l'aide de l'instruction ALTER TABLE. Stratégies d'optimisation pour les tables MDC Le texte suivant est une mise à jour du manuel Administration Guide: Performance, Chapter 6. Understanding the SQL compiler. Vous pouvez utiliser le transfert MDC même si un index RID fait partie du programme d'optimisation sans tenir compte de la présence ou non d'une clause WHERE dans l'instruction DELETE. En conséquence, lorsque vous établissez la liste des conditions à remplir pour autoriser le transfert et l'utilisation d'une méthode plus efficace de suppression de lignes, la condition "Index RID non sélectionné par l'optimiseur pour trouver les lignes à supprimer, sauf en cas d'absence de clause WHERE dans l'instruction DELETE" doit être supprimée. Ensuite, la phrase "Suppression de cellule" affichée par la sortie db2expln confirme que le transfert MDC est en vigueur. La sortie db2exfmt n'affiche pas cette information. Le texte suivant est une mise à jour de l'annexe A. DB2 Registry and Environment Variables: La description de DB2_MDC_ROLLOUT doit être modifiée afin que la condition "Index RID non sélectionné par l'optimiseur pour trouver les lignes à supprimer, sauf en cas d'absence de clause WHERE dans l'instruction DELETE" soit supprimée de la liste. Précisions concernant la description des paramêtres de configuration NEWLOGPATH, MIRRORPATH et OVERFLOWLOGPATH Si vous mettez à jour les valeurs des paramêtres de configuration newlogpath, mirrorpath ou overflowlogpath dans un environnement DB2 UDB Enterprise Server Edition, le numéro du noeud sera ajouté au nom de chemin sans tenir compte du numéro des noeuds du système. Cette configuration s'applique aux systèmes à partition unique ou à partitions multiples dans un environnement DB2 UDB Enterprise Server Edition. Valeur par défaut de la variable DB2_COLLECT_TS_REC_INFO La valeur par défaut de la variable DB2_COLLECT_TS_REC_INFO est définie sur ACTIVEE. Dans la version 8.1 de DB2 UDB, FixPak 7, la valeur de la variable de registre DB2_COLLECT_TS_REC_INFO a été définie par défaut sur ACTIVEE. La documentation actuelle indique à tort que la valeur par défaut de cette variable est DESACTIVEE. L'utilitaire Gouverneur Une instance de gouverneur se compose d'un utilitaire frontal et d'un ou de plusieurs démons. Chaque instance du gouverneur que vous démarrez est spécifique à une instance du gestionnaire de base de données. Par défaut, lorsque vous démarrez le gouverneur, un démon du gouverneur démarre sur chaque partition d'une base de données partitionnée. Toutefois, vous pouvez spécifier qu'un démon doit être démarré sur une seule partition, celle que vous souhaitez gérer. Remarques : 1. Lorsque le gouverneur est actif, ses requêtes d'images instantanées risquent de réduire les performances du gestionnaire de base de données. Afin d'améliorer ces performances, vous devez augmenter l'intervalle d'alerte du gouverneur afin de réduire l'utilisation de son unité centrale. 2. Les démons du gouverneur émettent des images instantanées de type LOCAL à destination de l'instance locale lors de leur exécution. Par conséquent, toute règle qui contient des clauses setlimit s'applique au résultat à partir du résultat d'image instantanée LOCAL plutôt que du résultat cumulé des images instantanées de type GLOBAL. Chaque démon du gouverneur collecte des informations à propos des applications qui s'exécutent sur la base de données. Le démon du gouverneur vérifie alors ces informations par rapport aux règles que vous avez indiquées dans le fichier de configuration du gouverneur pour cette base de données. Choix d'une méthode de réorganisation de table Lorsque vous envisagez une réorganisation de table interne (au lieu d'une réorganisation de table classique), souvenez-vous qu'elle nécessite davantage d'espace journal. La réorganisation de table interne enregistre ses activités afin de permettre une reprise après un incident imprévu ; par conséquent, elle nécessite davantage d'espace journal que la réorganisation classique. La réorganisation interne peut avoir besoin d'un espace journal équivalent à plusieurs fois la taille de la table réorganisée. La quantité d'espace nécessaire dépend du nombre de lignes qui sont déplacées et du nombre et de la taille des index de la table. Recommandation : choisissez une réorganisation de table interne pour des opérations 24h/24 et 7j/7 avec des fenêtres de maintenance minimales. Une réorganisation de table en ligne d'une table DMS permet de démarrer une opération de sauvegarde en ligne d'un espace table dans lequel réside la table au moment de la réorganisation. L'opération de réorganisation peut connaître des attentes sur verrouillage au cours de la phase de troncature. Pour obtenir des informations détaillées sur l'exécution de ces méthodes de réorganisation de table, consultez les descriptions syntaxiques REORG TABLE. Prise en charge de page volumineuse pour la mémoire du gestionnaire FCM (AIX 5L 64 bits) Sous AIX 5L 64 bits, la variable de registre DB2_LARGE_PAGE_MEM prend désormais en charge le mot clé FCM. Par défaut, sous AIX 5L 64-bits, la mémoire FCM se trouve dans l'ensemble des mémoires du système de gestion de base de données (DBMS). Toutefois, lorsque la variable de registre DB2_FORCE_FCM_BP est activée, la mémoire FCM se situe dans son propre ensemble de mémoires. Sous AIX 5L 64-bits, DB2_LARGE_PAGE_MEM prend en charge la spécification de l'ensemble des mémoires du système de gestion de base de données (DBMS). Lorsque la mémoire FCM se trouve dans l'ensemble des mémoires du DBMS, et que la prise en charge de page volumineuse est activée pour cet ensemble de mémoires, la mémoire FCM se situe dans des pages volumineuses. Lorsque la mémoire FCM se trouve dans son propre ensemble de mémoires, le mot clé FCM doit être ajouté à la valeur de la variable de registre DB2_LARGE_PAGE_MEM afin d'activer les pages volumineuses pour la mémoire FCM. La variable de registre DB2_RESOURCE_POLICY accepte un nouvel élément Avec la version 8.2.2 de DB2 Universal Database, UDB, (équivalente de la version 8.1, FixPak 9) le fichier de configuration indiqué par la variable de registre DB2_RESOURCE_POLICY accepte désormais un élément SCHEDULING_POLICY. L'élément SCHEDULING_POLICY peut être utilisé sur certaines plateformes pour sélectionner : * le principe d'organisation du système d'exploitation utilisé par le serveur DB2 UDB ; Remarque : La possibilité de définir un principe d'organisation de système d'exploitation s'étend à DB2 pour AIX. Cette possibilité n'était auparavant disponible que pour DB2 UDB pour Windows à l'aide de la variable DB2NTPRICLASS. * les priorités de système d'exploitation utilisées par des agents serveur DB2 individuels. Les variables de registre DB2PRIORITIES et DB2NTPRICLASS peuvent être utilisées séparément pour contrôler le principe d'organisation du système d'exploitation et définir les priorités d'agent DB2. Cependant, la spécification d'un élément SCHEDULING_POLICY dans le fichier de configuration des règles de ressource fournit un emplacement unique pour indiquer le principe d'organisation et les priorités d'agent associées. Exemple 1 Sélection du principe d'organisation AIX SCHED_FIFO2 avec un accroissement de priorité pour les processus d'écriture et de lecture du journal db2 : SCHED_FIFO2 60 db2loggr 56 db2loggw 56 Exemple 2 Remplacement par DB2NTPRICLASS=H sous Windows. HIGH_PRIORITY_CLASS Nouvelles variables d'environnement système (Linux) Les variables d'environnement système DB2_MAPPED_BASE et DB2DBMSADDR ont été ajoutées au FixPack 8. L'utilisation des variables de registre n'est recommandée que pour les utilisateurs expérimentés. DB2_MAPPED_BASE Nom de variable DB2_MAPPED_BASE Valeurs 0 OU adresse virtuelle (hex) dans la plage d'adresses 31 bits et 32 bits OU NULL (non défini) systèmes d'exploitation Linux pour x86 et Linux pour zSeries (31 bits) Description La variable de registre DB2_MAPPED_BASE peut être utilisée pour augmenter l'espace d'adresse virtuelle contigu dont dispose un processus DB2 Universal Database (UDB) en déplaçant l'adresse de rattachement des bibliothèques partagées pour le processus en question. L'espace d'adresse virtuelle contigu joue un rôle important pour augmenter la mémoire partagée de la base de données disponible pour DB2 UDB. Cette variable n'est effective que sur des distributions qui incluent le fichier mapped_base dans le répertoire d'identification du processus du système de fichiers proc. DB2 UDB tentera de replacer les bibliothèques partagées à l'adresse virtuelle 0x10000000 si cette variable n'est pas définie. La variable de registre peut aussi être définie pour n'importe quelle adresse virtuelle (au format hexadécimal) dans la tranche d'espace adresse 31 et 32 bits. Remarque : Une adresse erronée peut entraîner de graves incidents dans DB2 UDB, comme l'impossibilité de démarrer DB2 UDB ou de se connecter à la base de données. Une adresse est incorrecte si elle empiète sur une zone de mémoire déjà utilisée ou attribuée. Pour résoudre ce problème, attribuez la valeur NULL à la variable DB2_MAPPED_BASE à l'aide de la commande suivante : db2set DB2_MAPPED_BASE= Il se peut que le message suivant apparaisse plusieurs fois dans le fichier db2diag.log, car ce changement doit survenir pour chaque noeud logique : ADM0506I DB2 a automatiquement mis à jour la valeur du paramêtre "mapped_base" du noyau de "0x40000000(hex) 1073741824(dec)" à la valeur recommandée "0x10000000(hex) 268435456(dec)". Ce message ne s'affiche que si la définition de la variable de registre a abouti et indique la nouvelle adresse des bibliothèques partagées. DB2DBMSADDR Nom de variable DB2DBMSADDR Valeurs Adresses virtuelles comprises entre 0x09000000 et 0xB0000000, avec des incréments de 0x10000 systèmes d'exploitation Linux pour x86 et Linux pour zSeries (31 bits) Description Spécifie l'adresse par défaut de la mémoire partagée de la base de données au format hexadécimal. Remarque : Une adresse erronée peut entraîner de graves incidents dans DB2 UDB, comme l'impossibilité de démarrer DB2 UDB ou de se connecter à la base de données. Une adresse est incorrecte si, par exemple, elle empiète sur une zone de mémoire déjà utilisée ou attribuée. Pour résoudre ce problème, attribuez la valeur NULL à la variable DB2DBMSADDR à l'aide de la commande suivante : db2set DB2DBMSADDR= Vous pouvez définir cette variable conjointement avec DB2_MAPPED_BASE ou seule afin d'affiner la disposition de l'espace adresse des processus DB2 UDB. Cette variable modifie l'emplacement de la mémoire partagée d'instance en remplaçant son emplacement courant à l'adresse virtuelle 0x20000000 par la nouvelle valeur indiquée. Nouvelle variable de registre de communication La variable de registre DB2TCP_CLIENT_RCVTIMEOUT a été ajoutée dans la version 8.2. Tableau 12. Variable de communication +---------------------------+-------------+---------------------------+ | Nom de variable | systèmes | Valeurs | | | d'exploitat | | | | ion | | +---------------------------------------------------------------------+ | Description | +---------------------------+-------------+---------------------------+ | DB2TCP_CLIENT_RCVTIMEOUT | Tous | Valeur par défaut=0 (non | | | | définie) | | | | Valeurs : 0 à 32767 | | | | secondes | +---------------------------------------------------------------------+ | Permet de préciser le nombre de secondes pendant lesquelles un | | client attend les données sur TCP/IP. | | Aucun délai d'expiration n'est prévu si aucune valeur n'a été | | attribuée à la variable de registre ou que la valeur 0 lui a été | | affectée. Si le récepteur TCP/IP renvoie des données avant la fin | | du délai d'expiration, l'application s'exécute comme d'habitude. Si | | la valeur du délai d'expiration expire avant le renvoi des données, | | la connexion prend fin. | | | | Remarque : Cette variable de registre est applicable au client DB2 | | et au côté client de la passerelle DB2 uniquement. Elle n'est pas | | applicable au serveur DB2. | +---------------------------------------------------------------------+ Nouvelle variable de performances La variable de performances DB2_LARGE_PAGE_MEM a été ajoutée dans la version 8.2. Tableau 13. Variables de performances +---------------------------+-------------+---------------------------+ | Nom de variable | systèmes | Valeurs | | | d'exploitat | | | | ion | | +---------------------------------------------------------------------+ | Description | +---------------------------+-------------+---------------------------+ | DB2_LARGE_PAGE_MEM | AIX 5.x 64 | Valeur par défaut = NULL | | | bits | Utilisez le signe * pour | | | uniquement | dénoter que toutes les | | | | zones de mémoire | | | Linux | applicables doivent | | | | utiliser une mémoire page | | | | volumineuse ou une liste | | | | séparée par des virgules | | | | de zones de mémoire | | | | spécifiques de mémoire | | | | page volumineuse. Les | | | | zones disponibles | | | | diffèrent en fonction du | | | | système d'exploitation. | | | | Sous AIX 5.x 64 bits, les | | | | zones suivantes peuvent | | | | être spécifiées : DB, | | | | DBMS ou PRIVATE. Sous | | | | Linux, la zone suivante | | | | peut être spécifiée : DB. | +---------------------------------------------------------------------+ | La mémoire page volumineuse est prise en charge uniquement pour | | DB2 Universal Database (UDB) pour AIX 5L, 64-bit Edition, et DB2 | | UDB pour Linux. | | La variable de registre DB2_LARGE_PAGE_MEM est utilisée pour | | permettre la prise en charge des pages volumineuses lors de | | l'exécution sous AIX 5.x ou dans toute architecture Linux disposant | | du support de noyau approprié. Cette variable de registre déprécie | | la variable de registre DB2_LGPAGE_BP, qui peut uniquement être | | utilisée pour activer la mémoire page volumineuse pour la zone de | | mémoire partagée de la base de données. Ceci est désormais possible | | en spécifiant DB2_LARGE_PAGE_MEM=DB. Dans toute documentation, la | | mention de l'activation de pages volumineuses avec la variable de | | registre DB2_LGPAGE_BP peut être considérée comme synonyme de la | | définition de DB2_LARGE_PAGE_MEM=DB. L'utilisation d'une page | | volumineuse est principalement destinée à améliorer les | | performances des applications de calcul à hautes performances. | | Grâce aux pages volumineuses, il est possible d'améliorer les | | performances des applications intensives d'accès à la mémoire qui | | utilisent une grande quantité de mémoire virtuelle. Pour permettre | | à DB2 UDB d'utiliser des pages volumineuses, vous devez | | préalablement configurer le système d'exploitation en ce sens. | | L'activation de pages privées volumineuses augmente de manière | | significative la quantité de mémoire DB2 UDB utilisée, étant donné | | que chaque agent DB2 UDB utilise au moins 1 page volumineuse (16 | | Mo) de mémoire physique. Pour activer ces pages pour la mémoire | | privée de l'agent sur DB2 UDB 64 bits pour AIX (le paramêtre | | DB2_LARGE_PAGE_MEM=PRIVATE), les conditions suivantes doivent être | | remplies, outre la configuration des pages volumineuses sur le | | système d'exploitation : | | * Le propriétaire d'instance doit détenir les capacités | | CAP_BYPASS_RAC_VMM and CAP_PROPOGATE. | | * Le noyau doit prendre en charge les interfaces permettant à un | | processus de modifier sa taille de page au moment de l'exécution. | | Si vous activez cette variable sur DB2 UDB 64 bits pour AIX, vous | | réduisez au minimum la taille de la mémoire de base de données de | | secours du segment de mémoire partagée. Par défaut, créez un | | segment à 64 Go : consultez le paramêtre de configuration de la | | base de données (base de données_mémoire) de la mémoire partagée de | | la taille de la base de données pour obtenir plus de détails. | | Ainsi, vous évitez de réserver plus de mémoire partagée dans la | | mémoire RAM que vous ne serez susceptible d'utiliser. En attribuant | | une valeur à cette variable, vous limitez la possibilité | | d'augmenter de manière dynamique la configuration globale de la | | mémoire partagée de la base de données (pour augmenter la taille | | des pools de mémoire tampon, par exemple). Sous Linux, une | | configuration requise supplémentaire est nécessaire pour rendre la | | bibliothèque libcap.so disponible. Cette bibliothèque doit être | | installée pour que cette option puisse fonctionner. Si cette option | | est activée et que la bibliothèque n'est pas installée sur le | | système, DB2 UDB désactive les pages de noyau volumineuses et | | continue de fonctionner comme précédemment. | | Sous Linux, pour vérifier que les pages de noyau volumineuses sont | | disponibles, émettez la commande suivante : | | cat /proc/meminfo | | | | Si elles sont disponibles, les trois lignes suivantes doivent | | apparaître (avec des numéros différents en fonction de la quantité | | de mémoire configurée sur votre poste) : | | HugePages_Total: 200 | | HugePages_Free: 200 | | Hugepagesize: 16384 KB | | | | Si ces lignes n'apparaissent pas, ou si HugePages_Total est 0, la | | configuration du système d'exploitation ou du noyau est requise. | +---------------------------------------------------------------------+ Variables du compilateur SQL La mise à jour suivante s'applique à la rubrique "SQL compiler variables" de l'annexe A "DB2 registry and environment variables" du guide Administration Guide: Performance: Si les variables de compilateur DB2, DB2_MINIMIZE_LISTPREFETCH et DB2_INLIST_TO_NLJN ont chacune ou toutes deux la valeur ON, elles restent actives même si REOPT(ONCE) est spécifié. mises à jour du paramêtre de configuration Voici les mises à jour de la documentation relative au paramêtre de configuration : authentication - Type d'authentification Le paramêtre de type d'authentification (authentication) de la configuration du gestionnaire de base de données admet les valeurs suivantes : * DATA_ENCRYPT Le serveur accepte les méthodes d'authentification chiffrée du serveur et le chiffrement des données utilisateur. L'authentification fonctionne exactement comme SERVER_ENCRYPT. Les données utilisateur suivantes sont chiffrées lors de l'utilisation de ce type d'authentification : * Instructions SQL * Données variables de programme SQL * Données de sortie du serveur qui traite une instruction SQL et incluant une description des données * Tout ou partie des données de l'ensemble de réponses résultant d'une requête * Flux de données de l'objet LOB * Descripteurs de SQLDA * DATA_ENCRYPT_CMP Le serveur accepte les méthodes d'authentification chiffrée du serveur et le chiffrement des données utilisateur. En outre, ce type d'authentification permet la compatibilité avec des produits antérieurs qui ne prennent pas en charge le type d'authentification DATA_ENCRYPT. Ces produits sont autorisés à se connecter avec le type d'authentification SERVER_ENCRYPT et sans chiffrement des données utilisateur. Les produits qui prennent en charge le nouveau type d'authentification doivent l'utiliser. Ce type d'authentification n'est valable que dans le fichier de configuration du gestionnaire de base de données du serveur, il ne l'est pas s'il est utilisé sur la commande CATALOG DATABASE. util_impact_lim - Règle d'incidence sur l'instance A partir de DB2 Universal Database version 8.2, la valeur par défaut du paramêtre Instance impact policy ( util_impact_lim) de configuration du gestionnaire de base de données n'est plus 100 mais 10. sysadm_group, sysmaint_group, sysctrl_group, sysmon_group Les paramêtres de configuration du gestionnaire de base de données suivants admettent tous des noms de groupe de 30 octets (ou moins) sur l'ensemble des plateformes : * Nom de groupe des droits d'administration système (sysadm_group) * Nom de groupe des droits de maintenance du système (sysmaint_group) * Nom de groupe des droits de contrôle du système (sysctrl_group) * Nom de groupe des droits de moniteur système (sysmon_group) Le tableau de la rubrique "Database manager configuration parameter summary" contient des types de données incorrects pour ces paramêtres de configuration du gestionnaire de base de données. Dans tous les cas, la valeur correcte est char(30). estore_seg_sz - Taille du segment de mémoire étendue La valeur maximum du paramêtre de configuration Extended storage memory segment size database (estore_seg_size) sur les plateformes Windows est 16 777 216. hadr_timeout - Valeur du délai d'expiration de HADR La valeur maximum du paramêtre HADR timeout value (hadr_timeout) de configuration de la base de données est 4 294 967 295. locklist - Mémoire maximum de la liste des verrous La documentation relative au paramêtre Maximum storage for locklist (locklist) de configuration de la base de données indique que sa valeur maximum est de 60 000 pour les serveurs 64 bits et 32 bits Windows destinés aux seuls clients locaux. Cette information est erronée : la valeur correcte est 524 288. num_db_backups - Nombre de sauvegardes de base de données La plage de valeurs du paramêtre Number of database backups (num_db_backups de configuration de la base de données est incorrecte. La plage de valeurs correcte est 0 - 32 767. Fichier SQLDBCONF des paramêtres de configuration de la base de données après la migration de la version 8.1 à la version 8.2 de DB2 Universal Database (UDB), DB2 UDB utilise un nouveau fichier de paramêtres de configuration de la base de données intitulé SQLDBCONF (16 ko). Dans la version 8.1, le fichier de paramêtres de configuration de la base de données s'intitulait SQLDBCON et n'était que de 4 ko. Modification de la valeur par défaut de DB2_HASH_JOIN A partir de la version 8.1, la valeur ON est attribuée par défaut à la variable de registre DB2_HASH_JOIN. La variable hash-join doit être utilisée, mais aussi ajustée pour optimiser les performances. Les performances de la jointure par hachage sont meilleures si vous évitez les boucles par hachage et le dépassement de capacité du disque. Pour ajuster les performances de la jointure par hachage, évaluez l'espace mémoire maximum disponible pour le paramêtre sheapthres, puis ajustez le paramêtre sortheap. Augmentez sa valeur de façon à éviter autant que possible les boucles par hachage et les dépassements de capacité du disque, mais sans atteindre la limite spécifiée par le paramêtre sheapthres. Pour plus d'informations, voir la rubrique "Join methods" du manuel Administration Guide: Performance. La variable de registre DB2NTNOCACHE est déconseillée Les fonctionnalités préalablement réalisées via DB2NTNOCACHE peuvent l'être au niveau de l'espace de tables en spécifiant la clause NO FILE SYSTEM CACHING dans l'instruction CREATE TABLESPACE ou ALTER TABLESPACE. Reportez-vous à SQL Reference pour obtenir des détails sur son utilisation. La variable de registre DB2NTNOCACHE sera supprimée dans l'édition suivante. Tables d'explication et organisation des informations d'explication Les tables d'explication doivent être communes à plusieurs utilisateurs. Toutefois, les tables d'explication peuvent être définies pour un utilisateur et des alias peuvent être définis pour chaque utilisateur supplémentaire utilisant le même nom pour pointer vers les tables définies. Par ailleurs, les tables d'explication peuvent être définies sous le schéma SYSTOOLS. La fonction Explain accède par défaut au schéma SYSTOOLS si aucune autre table d'explication ou aucun alias n'a été trouvé sous l'ID session de l'utilisateur pour les SQL dynamiques ou l'ID utilisateur de l'instruction pour les SQL statiques. Chaque utilisateur partageant des tables d'explication communes doit insérer des droits d'accès à ces tables. Les droits de lecture des tables d'explication communes doivent également être limités, en principe aux utilisateurs qui analysent les informations d'explication. Instruction de capture des informations d'explication Les données d'explication sont capturées à votre demande lors de la compilation d'une l'instruction SQL. Réfléchissez à la manière dont vous souhaitez utiliser les informations capturées lorsque vous demandez des données d'explication. Capture des informations dans les tables d'explication * Instructions SQL dynamiques : Les informations de table d'explication sont capturées dans l'un des cas suivants : * Le registre spécial CURRENT EXPLAIN MODE est défini sur : * YES : Le compilateur SQL capture les donnés d'explication et exécute l'instruction SQL. * EXPLAIN : Le compilateur SQL capture les données d'explication mais n'exécute pas l'instruction SQL. * RECOMMEND INDEXES : Le compilateur SQL capture les données d'explication et les index recommandés sont placés dans la table ADVISE_INDEX, mais l'instruction SQL n'est pas exécutée. * EVALUATE INDEXES : Le compilateur SQL utilise les index placés par l'utilisateur dans la table ADVISE_INDEX pour évaluation. En mode EVALUATE INDEXES, toutes les instructions dynamiques sont expliquées comme si des index virtuels étaient disponibles. Le compilateur SQL choisi alors d'utiliser les index virtuels s'ils améliorent les performances des instructions. Sinon, les index sont ignorés. Pour savoir si les index proposés sont utiles, examinez les résultats EXPLAIN. * REOPT : Le compilateur SQL capture les données d'explication pour les instructions SQL statiques ou dynamiques lors de la réoptimisation de l'instruction au moment de l'exécution, lorsque les valeurs réelles des variables de l'hôte, des registres spéciaux ou des marqueurs de paramêtre sont disponibles. * L'option EXPLAIN ALL a été spécifiée sur la commande BIND ou PREP. Le compilateur SQL capture les données d'explication pour les instructions SQL dynamiques au moment de l'exécution, même si la valeur NO a été attribuée au registre spécial CURRENT EXPLAIN MODE. L'instruction SQL exécute également la requête et renvoie les résultats. Codes retour supplémentaires issus de db2CfgGet API, paramêtre collate_info Le paramêtre d'informations d'interclassement peut uniquement être affiché à l'aide de l'API db2CfgGet. Il ne peut pas être affiché à l'aide du interpréteur de commandes ou du Centre de contrôle. Type de configuration Base de données Type de paramêtre Informationnel Ce paramêtre offre 260 octets d'informations d'interclassement de base de données. Les 256 premiers octets spécifient la séquence de classement des informations, dans laquelle l'octet "n" contient le poids de tri du point de code dont la représentation décimale sous-jacente est "n" dans la page de codes de la base de données. Les 4 derniers octets contiennent des informations internes relatives au type de séquence de classement. Les 4 derniers octets de collate_info sont un entier. L'entier est sensible à l'ordre endian de la plateforme. Les valeurs possibles sont les suivantes : * 0 - La séquence contient des pondérations non uniques * 1 - La séquence contient toutes les pondérations uniques * 2 - Il s'agit d'une séquence d'identité, pour laquelle des chaînes sont comparées octet par octet. * 3 - La séquence est NLSCHAR, utilisée pour le tri des caractères dans une base de données Thai TIS620-1 (page de codes 874). * 4 - La séquence est IDENTITY_16BIT, qui permet d'implémenter l'algorithme "CESU-8 Compatibility Encoding Scheme for UTF-16 : 8-Bit" tel que spécifié dans l'Unicode Technical Report #26 disponible sur le site Web Unicode Technical Consortium à l'adresse http://www.unicode.org. * X'8001' - La séquence est UCA400_NO, qui implémente l'algorithme UCA (Unicode Collation Algorithm) basé sur le standard Unicode Standard version 4.00 pour lequel la normalisation est implicitement activée. * X'8002' - La séquence est UCA400_LTH, qui implémente l'algorithme UCA (Unicode Collation Algorithm) basé sur le standard Unicode Standard version 4.00 et trie tous les caractères Thai dans l'ordre du Royal Thai Dictionary. * X'8003' - La séquence est UCA400_LSK. qui implémente l'algorithme UCA (Unicode Collation Algorithm) basé sur le standard Unicode Standard version 4.00 et trie correctement tous les caractères slovaques. Si vous utilisez des informations sur le type internes, vous pouvez prendre en compte l'inversion d'octets lors de l'extraction des informations d'une base de données sur une plateforme différente. Vous pouvez spécifier la séquence de classement au moment de la création de la base de données. Définition automatique de la taille de lecture anticipée par défaut et mise à jour des valeurs par défaut A partir de DB2 Universal Database (UDB) version 8.2, vous pouvez utiliser la taille de lecture anticipée automatique (AUTOMATIC) pour un espace table. DB2 UDB met automatiquement à jour la taille de lecture anticipée lorsque le nombre de conteneurs de l'espace table change. La syntaxe de la variable de registre DB2_PARALLEL_IO est étendue pour reconnaître les conteneurs aux différentes caractéristiques de parallélisme d'E/S. Grâce à cette syntaxe étendue, les conteneurs d'espaces table différents peuvent comporter des caractéristiques différentes de parallélisme d'E/S. La caractéristique de parallélisme d'E/S de chaque espace table est utilisée lorsqu'une taille de lecture anticipée AUTOMATIC est spécifiée pour l'espace table. Si la variable de registre DB2_PARALLEL_IO est activée sans que soit utilisée la syntaxe étendue qui identifie des caractéristiques spécifiques de parallélisme d'E/S pour les espaces table, un niveau de parallélisme par défaut est supposé. Il s'agit de RAID 5 (6+1). Les informations de taille de lecture anticipée utilisées par l'optimiseur ne sont régénérées qu'en cas d'émission de l'instruction ALTER TABLESPACE, qui modifie la taille de lecture anticipée d'un espace table ou le nombre de conteneurs (à l'aide de ADD/DROP/BEGIN NEW STRIPE SET/ADD TO NEW STRIPE SET). Si le paramêtre de registre relatif au nombre de disques physiques par conteneur change, une instruction ALTER TABLESPACE PREFETCHSIZE AUTOMATIC doit être émise pour régénérer les informations de l'optimiseur (sauf si une instruction ALTER TABLESPACE qui régénère les informations de l'optimiseur est déjà émise). Si un espace table est redirigé ou restauré en vue de l'utilisation d'un nombre de conteneurs différent, régénérez les informations de l'optimiseur en émettant l'instruction ALTER TABLESPACE PREFETCHSIZE AUTOMATIC. Si l'espace table comprend plusieurs ensembles de segments, le nombre maximum de conteneurs figurant parmi ces derniers est utilisé pour calculer la taille de lecture anticipée. Si la taille de lecture anticipée dépasse la valeur maximum (32 767 pages), elle est remplacée par le plus grand multiple du nombre de conteneurs, qui est inférieur à la taille maximum de la lecture anticipée. Dans un environnement DB2 UDB Enterprise Server Edition, si un espace table utilise une taille de lecture anticipée automatique (AUTOMATIC), celle-ci peut varier sur les diverses partitions de base de données. Ceci peut se produire car des partitions de base de données différentes peuvent comporter des nombres de conteneurs différents, utilisés pour le calcul de la taille de lecture anticipée. Pour générer le plan d'accès à la requête, l'optimiseur utilise la taille de lecture anticipée de la première partition d'un groupe de partitions de base de données. Administration : Planification Tables à regroupement de colonnes Une table à regroupement de colonnes ne peut pas être créée dans une base de données possédant plus d'une partition. Conception d'espace table catalogue Lors de la création d'une base de données, trois espaces table sont définis, y compris l'espace table SYSCATSPACE pour les tables catalogue système. La taille de page qui devient la taille de page par défaut pour tous les espaces table est définie lorsque la base de données est créée. Si une taille de page supérieure à 4 096 octets (ou 4 ko) est choisie, la taille de page pour les tables catalogue est limitée à la taille des lignes que celles-ci auraient si l'espace table catalogue avait une taille de page égale à 4 ko. La taille de page de base de données par défaut est stockée en tant que paramêtre de configuration de base de données informatif appelé pagesize. Codes territoire et pages de codes pris en charge Dans l'annexe B, "National language support (NLS)" du manuel Administration Guide: Planning, la rubrique intitulée "Supported territory codes and code pages" comporte les tableaux de chaque territoire. Deux tableaux doivent être mis à jour : Chine (PRC), identificateur de territoire : CN La page de codes de la ligne Linux GBK, dans le tableau "Chine (PRC), identificateur de territoire : CN (China (PRC), territory identifier: CN)" comporte la valeur 1383, qui doit être remplacée par 1386. La ligne doit donc se présenter ainsi : 1386 D-4 GBK 86 zh_CN.GBK Linux Japon, identificateur de territoire : JP Le tableau "Japon, identificateur de territoire : JP (Japan, territory identifier: JP)" a été modifié. Le nom de l'environnement local suivant doit être supprimé : 954 D-1 eucJP 81 japanese Solaris Tableau corrigé : Tableau 14. Japon, identificateur de territoire : JP +----------+----------+----------+----------+---------------+---------+ | Page de | Groupe | Jeu de | Code | Environnement | système | | codes | | codes | territoi | local | d'explo | | | | | re | | itation | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | | 81 | ja_JP | AIX | | | | IBM-eucJ | | | | | | | P | | | | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | JA_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 930 | D-1 | IBM-930 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 939 | D-1 | IBM-939 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 5026 | D-1 | | 81 | - | Host | | | | IBM-5026 | | | | +----------+----------+----------+----------+---------------+---------+ | 5035 | D-1 | | 81 | - | Host | | | | IBM-5035 | | | | +----------+----------+----------+----------+---------------+---------+ | 1390 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 1399 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 5039 | D-1 | SJIS | 81 | ja_JP.SJIS | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | EUC-JP | 81 | ja_JP | Linux | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 942 | D-1 | IBM-942 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.EUC | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | SCO | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | ja_JP.PCK | Solaris | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | Solaris | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | ja_JP.UTF-8 | Solaris | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | Windows | +----------+----------+----------+----------+---------------+---------+ | 1394 | D-1 | | 81 | - | | +----------+----------+----------+----------+---------------+---------+ Fonction XA prise en charge par DB2 Universal Database DB2 Universal Database (UDB) prend en charge la spécification XA91 définie dans X/Open CAE Specification Distributed Transaction Processing: The XA Specification, avec les exceptions suivantes : * Service asynchrones La spécification XA permet à l'interface d'utiliser des services asynchrones, de sorte que le résultat d'une requête puisse être vérifié ultérieurement. Le gestionnaire de base de données nécessite que les requêtes soient appelées en mode synchrone. * Enregistrement L'interface XA offre deux manières d'enregistrer un RM : enregistrement statique et enregistrement dynamique. DB2 UDB prend en charge les enregistrements dynamiques et statiques. DB2 UDB fournit deux commutateurs : * db2xa_switch pour l'enregistrement dynamique * db2xa_switch_static pour l'enregistrement statique * Migration des associations DB2 UDB ne prend pas en charge la migration des transactions entre les unités d'exécution du contrôle. Utilisation et emplacement du commutateur XA Comme l'exige l'interface XA, le gestionnaire de base de données offre une variable C externe db2xa_switch et db2xa_switch_static de type xa_switch_t pour renvoyer la structure de commutateur XA au TM. Au contraire des adresses des différentes fonctions XA, les zones suivantes sont renvoyées : Zone Valeur nom Nom de produit du gestionnaire de base de données. Par exemple, DB2 UDB pour AIX. repères Pour db2xa_switch TMREGISTER | TMNOMIGRATE est défini Permet d'établir de manière explicite que DB2 UDB utilise un enregistrement dynamique et que TM ne doit pas utiliser la migration des associations. Permet d'établir de manière implicite que l'opération asynchrone n'est pas prise en charge. Pour db2xa_switch_static TMNOMIGRATE est défini Permet d'établir de manière explicite que DB2 UDB utilise un enregistrement dynamique et que TM ne doit pas utiliser la migration des associations. Permet d'établir de manière implicite que l'opération asynchrone n'est pas prise en charge. version Doit être nul. Utilisation du commutateur XA de DB2 Universal Database L'architecture XA nécessite qu'un Gestionnaire de ressources offre un commutateur permettant au Gestionnaire de transactions XA d'accéder à ses routines xa_. Le commutateur d'un Gestionnaire de ressources utilise une structure appelée xa_switch_t. Le commutateur contient le nom du Gestionnaire de ressources, des pointeurs non NULL vers les points d'entrée XA du Gestionnaire de ressources, un repère et un numéro de version. systèmes Linux- et UNIX- Il est possible d'obtenir le commutateur de DB2 Universal Database (UDB) de l'une des deux façons suivantes : * Par un niveau supplémentaire d'adressage indirect. Dans un programme C, vous pouvez définir la macro : #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) avant d'utiliser db2xa_switch ou db2xa_switch_static. * En appelant db2xacic ou db2xacicst DB2 UDB fournit ces API, qui renvoient l'adresse de la structure db2xa_switch ou db2xa_switch_static. Le prototype de cette fonction est établi de la manière suivante : struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Quelle que soit la méthode, vous devez lier votre application à libdb2. Windows NT Le pointeur vers la structure xa_switch, db2xa_switch ou db2xa_switch_static est exporté en tant que données DLL. Cela implique qu'une application Windows NT utilisant cette structure doit lui faire référence de l'une des trois manières suivantes : * Par un niveau supplémentaire d'adressage indirect. Dans un programme C, vous pouvez définir la macro : #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) avant d'utiliser db2xa_switch ou db2xa_switch_static. * Si vous utilisez le compilateur Microsoft Visual C++, db2xa_switch ou db2xa_switch_static peut être défini comme : extern __declspec(dllimport) struct xa_switch_t db2xa_switch extern __declspec(dllimport) struct xa_switch_t db2xa_switch_static * En appelant db2xacic ou db2xacicst DB2 UDB fournit cette API, qui renvoie l'adresse de la structure db2xa_switch ou db2xa_switch_static. Le prototype de cette fonction est établi de la manière suivante : struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Avec l'une de ces méthodes, vous devez lier votre application à db2api.lib. Exemple de code C Le code suivant illustre les différentes manières d'accéder à db2xa_switch ou à DB2xa_switch_static via un programme C sur une plateforme DB2 UDB. Assurez-vous d'avoir lié votre application à la bibliothèque appropriée. #include #include struct xa_switch_t * SQL_API_FN db2xacic( ); #ifdef DECLSPEC_DEFN extern __declspec(dllimport) struct xa_switch_t db2xa_switch; #else #define db2xa_switch (*db2xa_switch) extern struct xa_switch_t db2xa_switch; #endif main( ) { struct xa_switch_t *foo; printf ( "%s \n", db2xa_switch.name ); foo = db2xacic(); printf ( "%s \n", foo->name ); return ; } mise à jour des valeurs TPM et tp_mon_name pour les formats de chaîne xa_open La colonne Paramêtres internes du tableau suivant a été modifiée de façon à indiquer les paramêtres de l'unité d'exécution du contrôle (TOC). L'unité d'exécution du contrôle est l'entité à laquelle toutes les connexions DB2 UDB XA sont liées : * Lorsque sa valeur est T, toutes les connexions DB2 établies sous une unité d'exécution donnée du système d'exploitation n'existent que pour l'unité d'exécution en question. Les unités d'exécution ne peuvent pas partager de connexions DB2 UDB. Chaque unité d'exécution du système d'exploitation doit établir son propre ensemble de connexions DB2 UDB XA. * Lorsque la valeur de l'unité d'exécution du contrôle est P, toutes les connexions DB2 UDB XA sont uniques pour le processus du système d'exploitation et toutes les connexions XA peuvent être partagées par les unités d'exécution du système d'exploitation. Tableau 15. Valeurs valides de TPM et tp_mon_name +-----------------+----------------+----------------------------------+ | Valeur de TPM | Moniteur du | Paramêtres internes | | | programme | | | | transactionnel | | | | (TP) | | +-----------------+----------------+----------------------------------+ | CICS | IBM TxSeries | AXLIB=libEncServer (pour | | | CICS | Windows) | | | | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (pour systèmes Linux et UNIX) | | | | HOLD_CURSOR=T | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | ENCINA | Moniteur IBM | AXLIB=libEncServer (pour | | | TxSeries | Windows) | | | Encina | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (pour systèmes Linux et UNIX) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MQ | IBM MQSeries | AXLIB=mqmax | | | | (pour Windows) | | | | =/usr/mqm/lib/libmqmax_r.a | | | | (pour applications AIX conçues | | | | avec | | | | des unités d'exécution) | | | | =/usr/mqm/lib/libmqmax.a | | | | (pour applications AIX non | | | | conçues avec | | | | des unités d'exécution) | | | | =/opt/mqm/lib/libmqmax.so | | | | (pour Solaris) | | | | =/opt/mqm/lib/libmqmax_r.sl | | | | (pour applications HP conçues | | | | avec | | | | des unités d'exécution) | | | | =/opt/mqm/lib/libmqmax.sl | | | | (pour applications HP non | | | | conçues | | | | avec des unités d'exécution) | | | | =/opt/mqm/lib/libmqmax_r.so | | | | (pour applications Linux conçues | | | | avec des unités d'exécution) | | | | =/opt/mqm/lib/libmqmax.so | | | | (pour applications Linux non | | | | conçues | | | | avec des unités d'exécution) | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=P | +-----------------+----------------+----------------------------------+ | CB | IBM Component | AXLIB=somtrx1i (pour Windows) | | | Broker | =libsomtrx1 | | | | (pour systèmes Linux et UNIX) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | SF | IBM San | AXLIB=ibmsfDB2 | | | Francisco | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | TUXEDO | BEA Tuxedo | AXLIB=libtux | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MTS | Microsoft | Il n'est pas nécessaire de | | | Transaction | configurer DB2 UDB pour MTS. MTS | | | Server | est détecté automatiquement par | | | | le pilote ODBC de DB2 UDB. | +-----------------+----------------+----------------------------------+ | JTA | Java | Il n'est pas nécessaire de | | | Transaction | configurer DB2 UDB pour des | | | API | serveurs EJS (Enterprise Java | | | | Servers) comme IBM WebSphere. Le | | | | pilote JDBC de DB2 UDB détecte | | | | automatiquement cet | | | | environnement. Par conséquent, | | | | cette valeur TPM est ignorée. | +-----------------+----------------+----------------------------------+ Activation des tables de conversion pour les pages de codes 923 et 924 Le tableau suivant contient une liste de tous les fichiers de table de conversion de pages de codes associés aux pages de codes 923 et 924. Chaque fichier se présente sous la forme XXXXYYYY.cnv ou ibmZZZZZ.ucs, où XXXXX est le numéro de la page de codes source et YYYY est le numéro de la page de codes cible. Le fichier ibmZZZZZ.ucs prend en charge la conversion entre la page de codes ZZZZZ et Unicode. Procédure Pour activer une table de conversion de page de codes particulière, renommer ou copier ce fichier de table de conversion à son nouveau nom comme l'illustre la seconde colonne. Par exemple, pour prendre en charge le symbole euro lors de la connexion d'un client 8859-1/15 (Latin 1/9) à une base de données Windows 1252, vous devez renommer ou copier les fichiers suivants de table de conversion de page de codes dans le répertoire sqllib/conv/ : * 09231252.cnv to 08191252.cnv * 12520923.cnv to 12520819.cnv * ibm00923.ucs to ibm00819.ucs Tableau 16. Fichiers de table de conversion pour les pages de codes 923 et 924 +----------------------------------+----------------------------------+ | Fichiers de table de conversion | Nouveau nom | | 923 et 924 dans le répertoire | | | sqllib/conv/ | | +----------------------------------+----------------------------------+ | 04370923.cnv | 04370819.cnv | +----------------------------------+----------------------------------+ | 08500923.cnv | 08500819.cnv | +----------------------------------+----------------------------------+ | 08600923.cnv | 08600819.cnv | +----------------------------------+----------------------------------+ | 08630923.cnv | 08630819.cnv | +----------------------------------+----------------------------------+ | 09230437.cnv | 08190437.cnv | +----------------------------------+----------------------------------+ | 09230850.cnv | 08190850.cnv | +----------------------------------+----------------------------------+ | 09230860.cnv | 08190860.cnv | +----------------------------------+----------------------------------+ | 09231043.cnv | 08191043.cnv | +----------------------------------+----------------------------------+ | 09231051.cnv | 08191051.cnv | +----------------------------------+----------------------------------+ | 09231114.cnv | 08191114.cnv | +----------------------------------+----------------------------------+ | 09231252.cnv | 08191252.cnv | +----------------------------------+----------------------------------+ | 09231275.cnv | 08191275.cnv | +----------------------------------+----------------------------------+ | 09241252.cnv | 10471252.cnv | +----------------------------------+----------------------------------+ | 10430923.cnv | 10430819.cnv | +----------------------------------+----------------------------------+ | 10510923.cnv | 10510819.cnv | +----------------------------------+----------------------------------+ | 11140923.cnv | 11140819.cnv | +----------------------------------+----------------------------------+ | 12520923.cnv | 12520819.cnv | +----------------------------------+----------------------------------+ | 12750923.cnv | 12750819.cnv | +----------------------------------+----------------------------------+ | ibm00923.ucs | ibm00819.ucs | +----------------------------------+----------------------------------+ Fichiers de table de conversion pour les pages de codes euro Les tableaux ci-dessous répertorient les tables de conversion qui ont été améliorées de façon à prendre en charge le symbole monétaire de l'euro. Si vous souhaitez désactiver la prise en charge du symbole de l'euro, téléchargez le fichier de table de conversion indiqué dans la colonne intitulée "Fichiers de table de conversion". Arabe +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1046, 9238 | 08641046.cnv, | | | | 10460864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1256, 5352 | 08641256.cnv, | | | | 12560864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1200, 1208, 13488, | IBM00864.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 864, 17248 | 10460864.cnv, | | | | 08641046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1089 | 10461089.cnv, | | | | 10891046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1256, 5352 | 10461256.cnv, | | | | 12561046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1200, 1208, 13488, | IBM01046.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1089 | 1046, 9238 | 10891046.cnv, | | | | 10461089.cnv | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 864, 17248 | 12560864.cnv, | | | | 08641256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1046, 9238 | 12561046.cnv, | | | | 10461256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1200, 1208, 13488, | IBM01256.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Baltique +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 921, 901 | 1257 | 09211257.cnv, | | | | 12570921.cnv, | | | | IBM00921.ucs | +-------------------+----------------------+--------------------------+ | 921, 901 | 1200, 1208, 13488, | IBM00921.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 921, 901 | 12570921.cnv, | | | | 09211257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 922, 902 | 12570922.cnv, | | | | 09221257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 1200, 1208, 13488, | IBM01257.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Bélarus +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1251, 5347 | 11311251.cnv, | | | | 12511131.cnv | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1283 | 11311283.cnv | +-------------------+----------------------+--------------------------+ Alphabet cyrillique +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 855, 872 | 866, 808 | 08550866.cnv, | | | | 08660855.cnv | +-------------------+----------------------+--------------------------+ | 855, 872 | 1251, 5347 | 08551251.cnv, | | | | 12510855.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 855, 872 | 08660855.cnv, | | | | 08550866.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 1251, 5347 | 08661251.cnv, | | | | 12510866.cnv | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 855, 872 | 12510855.cnv, | | | | 08551251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 866, 808 | 12510866.cnv, | | | | 08661251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1124 | 12511124.cnv, | | | | 11241251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1125, 848 | 12511125.cnv, | | | | 11251251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1131, 849 | 12511131.cnv, | | | | 11311251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1200, 1208, 13488, | IBM01251.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Estonien +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 922, 902 | 1257 | 09221257.cnv, | | | | 12570922.cnv, | | | | IBM00922.ucs | +-------------------+----------------------+--------------------------+ | 922, 902 | 1200, 1208, 13488, | IBM00922.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Grec +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 813, 4909 | 869, 9061 | 08130869.cnv, | | | | 08690813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1253, 5349 | 08131253.cnv, | | | | 12530813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1200, 1208, 13488, | IBM00813.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 869, 9061 | 813, 4909 | 08690813.cnv, | | | | 08130869.cnv | +-------------------+----------------------+--------------------------+ | 869, 9061 | 1253, 5349 | 08691253.cnv, | | | | 12530869.cnv | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 813, 4909 | 12530813.cnv, | | | | 08131253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 869, 9061 | 12530869.cnv, | | | | 08691253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 1200, 1208, 13488, | IBM01253.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Hébreu +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 856, 9048 | 862, 867 | 08560862.cnv, | | | | 08620856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 916 | 08560916.cnv, | | | | 09160856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1255, 5351 | 08561255.cnv, | | | | 12550856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1200, 1208, 13488, | IBM0856.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 862, 867 | 856, 9048 | 08620856.cnv, | | | | 08560862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 916 | 08620916.cnv, | | | | 09160862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1255, 5351 | 08621255.cnv, | | | | 12550862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1200, 1208, 13488, | IBM00862.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 916 | 856, 9048 | 09160856.cnv, | | | | 08560916.cnv | +-------------------+----------------------+--------------------------+ | 916 | 862, 867 | 09160862.cnv, | | | | 08620916.cnv | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 856, 9048 | 12550856.cnv, | | | | 08561255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 862, 867 | 12550862.cnv, | | | | 08621255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 1200, 1208, 13488, | IBM01255.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Latin-1 +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 437 | 850, 858 | 04370850.cnv, | | | | 08500437.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 437 | 08500437.cnv, | | | | 04370850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 860 | 08500860.cnv, | | | | 08600850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1114, 5210 | 08501114.cnv, | | | | 11140850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1275 | 08501275.cnv, | | | | 12750850.cnv | +-------------------+----------------------+--------------------------+ | 860 | 850, 858 | 08600850.cnv, | | | | 08500860.cnv | +-------------------+----------------------+--------------------------+ | 1275 | 850, 858 | 12750850.cnv, | | | | 08501275.cnv | +-------------------+----------------------+--------------------------+ Latin-2 +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 852, 9044 | 1250, 5346 | 08521250.cnv, | | | | 12500852.cnv | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 852, 9044 | 12500852.cnv, | | | | 08521250.cnv, | | | | IBM01250.ucs | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 1200, 1208, 13488, | IBM01250.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Chinois simplifié +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 837, 935, 1388 | 1200, 1208, 13488, | 1388ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1386 | 1200, 1208, 13488, | 1386ucs2.cnv, | | | 17584 | ucs21386.cnv | +-------------------+----------------------+--------------------------+ Chinois traditionnel +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 950, 1370 | 09370950.cnv, | | | | 0937ucs2.cnv | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 1200, 1208, 13488, | 0937ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1114, 5210 | 850, 858 | 11140850.cnv, | | | | 08501114.cnv | +-------------------+----------------------+--------------------------+ Thaïlande +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 874, 1161 | 1200, 1208, 13488, | IBM00874.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Turc +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 857, 9049 | 1254, 5350 | 08571254.cnv, | | | | 12540857.cnv | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 857, 9049 | 12540857.cnv, | | | | 08571254.cnv, | | | | IBM01254.ucs | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 1200, 1208, 13488, | IBM01254.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Ukraine +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 1124 | 1251, 5347 | 11241251.cnv, | | | | 12511124.cnv | +-------------------+----------------------+--------------------------+ | 1125, 848 | 1251, 5347 | 11251251.cnv, | | | | 12511125.cnv | +-------------------+----------------------+--------------------------+ Unicode +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 813, 4909 | IBM00813.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 862, 867 | IBM00862.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 864, 17248 | IBM00864.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 874, 1161 | IBM00874.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 921, 901 | IBM00921.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 922, 902 | IBM00922.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1046, 9238 | IBM01046.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1250, 5346 | IBM01250.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1251, 5347 | IBM01251.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1253, 5349 | IBM01253.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1254, 5350 | IBM01254.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1255, 5351 | IBM01255.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1256, 5352 | IBM01256.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1386 | ucs21386.cnv, | | 13488, 17584 | | 1386ucs2.cnv | +-------------------+----------------------+--------------------------+ Vietnamien +-------------------+----------------------+--------------------------+ | CCSIDs/CPGIDs du | CCSIDs/CPGIDs du | Fichiers de table de | | serveur de base | client de base de | conversion | | de données | données | | +-------------------+----------------------+--------------------------+ | 1258, 5354 | 1129, 1163 | 12581129.cnv | +-------------------+----------------------+--------------------------+ Référence API Paramêtre oBackupsize API db2Backup Dans la version 8 de DB2 UDB, le paramêtre oBackupsize API db2Backup API concerne les sauvegardes intégrales et non les sauvegardes incrémentielles ou delta. Le paramêtre oBackupsize représente la taille de l'image de sauvegarde (en Mo). Prise en charge de l'option SYNCPOINT L'option SYNCPOINT des API sqlesetc, sqleqryc et sqlaprep est ignorée à partir de la version 8 et n'est disponible qu'à des fins de compatibilité amont. Nouvelle zone de la structure SQLEDBDESC Dans l'API sqlecrea, une nouvelle zone a été ajoutée pour prendre en charge l'entrée-sortie en accès direct. Nom de zone char sqlfscaching non signé Description Mise en cache du système de fichiers Valeurs 0 La mise en cache du système de fichiers est active pour l'espace de table en cours 1 La mise en cache du système de fichiers est inactive pour l'espace de table en cours autre La mise en cache du système de fichiers est active pour l'espace de table en cours Corrections apportées à la nouvelle zone dans la structure SQLB-TBSPQRY-DATA Une nouvelle zone, unsigned char fsCaching, a été ajoutée à la structure SQLB-TBSPQRY-DATA. Cette nouvelle zone prend en charge l'entrée-sortie en accès direct. Bien que la taille du bit réservé soit documentée en tant que 32-bit, la taille correcte est de 31-bit. Développement d'application : Construction et exécution des applications Exemples de reconfiguration dynamique (AIX) Un nouveau fichier exemple, ibm_db2_sln_upart_smt, est disponible dans le FixPak 3 de la version 8.2 de DB2 Universal Database, UDB, (équivalente de la version 8.1, Fixpak 10). La table suivante montre le nom et la description du fichier exemple. Tableau 17. Exemples de scripts de reconfiguration dynamique +-----------------+---------------------------------------------------+ | Nom du script | Description du fichier | | exemple | | +-----------------+---------------------------------------------------+ | ibm_db2_sln_upa | Ce script de reconfiguration dynamique du shell | | rt_smt | Korn (DR script) pour AIX facilite l'utilisation | | | des fonctions du partitionnement logique | | | dynamique DLPAR (Dynamic Logical Partitioning) | | | fournies avec la version 5.3 d'AIX qui s'exécute | | | sur des systèmes pSeries basés sur POWER5, tels | | | que p5 570 et p5 590. Ce script ressemble au | | | script ibm_db2_sln DR, mais il est optimisé pour | | | prendre en charge les fonctions POWER5 et AIX | | | V5.3 telles que le micropartitionnement et la | | | fonction SMT. Vous trouverez plus d'informations | | | dans le script DR lui-même. | +-----------------+---------------------------------------------------+ Le script exemple ibm_db2_sln_upart_smt se trouve dans le répertoire sqllib/samples/DLPAR sur DB2 UDB pour AIX. Logiciels de développement pris en charge par Linux Pour obtenir des informations détaillées sur l'installation, consultez les "images d'installation du noyau Linux 2.6" dans les Remarques sur le produit de la version 8.2.2 de DB2 UDB (section Nouveautés de la présente édition). Les tableaux ci-après décrivent la prise en charge de l'architecture Linux DB2 à partir du FixPak 9. Consultez le site Web validate pour les mises à jour de cette prise en charge : http://www.ibm.com/db2/linux/validate Tableau 18. Linux pour Intel x86 (32 bits) +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Conectiva Linux Enterprise | 2.4.19 | glibc | Technologie | | Edition (CLEE) | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | LINX Rocky Secure Server | 2.4.21 | glibc | | | 2.1 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Advanced Server | 2.4.21- | glibc | | | 4.0 | as.2 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Function Server | 2.4.20- | glibc | | | 4.0 | 8smp | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.9-e | glibc | | | 2.1 AS/ES/WS | 16 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Requiert | | (RHEL) 4 | | .3.3 | également le | | | | | package | | | | | compat-libstdc++- | | | | | 33. | +-----------------------------+---------+---------+-------------------+ | SCO Linux 4.0 | 2.4.19 | glibc | Technologie | | | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.0 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.1 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.7 | glibc | | | Server (SLES) 7 | | 2.2.2 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19 | glibc | Validé jusqu'au | | Server (SLES) 8 | | 2.2.5 | niveau SuSE | | | | | Service Pack 2. | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 7 Server | 2.4.9 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 8 Server | 2.4.18- | glibc | | | | 5 | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19 | glibc | | | Server 8 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tableau 19. Distributions Linux pour Intel x86 (32 bits) non entreprise (ne sont plus prises en charge par le fournisseur) +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 4 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.3 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 8.0 | 2.4.18- | glibc | | | | 14 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | SuSE 7.3 | 2.4.10 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ Tableau 20. Linux pour s/390 et zSeries (version noyau 31 bits prise en charge sous s/390 ; 64 bits sous zSeries) +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 8 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Requiert | | (RHEL) 4 | | .3.3 | également le | | | | | package | | | | | compat-libstdc++- | | | | | 33. | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.7-5 | glibc | compat.rpm | | Server (SLES) 7 | 8 | 2.2.4 | contient | | | | | libstdc++ 6.1. | | | | | Utilisez JDK | | | | | 1.3.1 SR 1 pour | | | | | Java. | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19 | glibc | Technologie | | Server (SLES) 8 | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbo Linux Enterprise | 2.4.19 | glibc | Technologie | | Server (TLES) 8 | | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tableau 21. Linux pour x86-64 +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Requiert | | (RHEL) 4 | | .3.3 | également le | | | | | package | | | | | compat-libstdc++- | | | | | 33. | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19- | glibc | | | Server (SLES) 8.0 | SMP | 2.2.5-1 | | | | | 6 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ Tableau 22. Linux on POWER (iSeries et pSeries) +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Requiert | | (RHEL) 4 | | .3.3 | également le | | | | | package | | | | | compat-libstdc++- | | | | | 33. | +-----------------------------+---------+---------+-------------------+ | SuSE Enterprise Server | 2.4.19- | glibc | Technologie | | (SLES) 8 | 16 | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19- | glibc | Technologie | | Server 8 | 16 | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tableau 23. Linux pour IA64 +-----------------------------+---------+---------+-------------------+ | Distributions | Noyau | Bibliot | Commentaires | | | | hèque | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.18- | glibc | | | 2.1 AS/ES/WS | e.12smp | | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Requiert | | (RHEL) 4 | | .3.3 | également le | | | | | package | | | | | compat-libstdc++- | | | | | 33. | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19- | glibc | Technologie | | Server (SLES) 8 | SMP | 2.2.5 | United Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ DB2 UDB pour distributions Linux pour Intel x86 basées noyau Linux 2.6 prend en charge les langages de programmation et compilateurs suivants : C GNU/Linux gcc version 3.3 C++ GNU/Linux g++ version 3.3 COBOL Micro Focus COBOL Server Express, version 2.2 avec Service Pack 1 Java IBM Developer Kit and Runtime Environment pour Linux, Java 2 Technology Edition, version 1.3.1 et Service Release 1 de la version 1.4.1, version 32 bits Remarque : DB2 UDB installe la dernière version prise en charge du kit du développeur si celui-ci n'est pas déjà installé, à moins que l'installation DB2 UDB ne soit une mise à jour d'une précédente installation de la version 8 de DB2 UDB. Si une précédente installation de la version 8 de DB2 UDB est mise à jour, le kit du développeur pris en charge doit être installé manuellement à partir du CD-ROM. Perl Perl 5.004_04 ou supérieure, DBI 0.93 ou supérieure. PHP PHP 4.3.4 ou supérieure. REXX Object REXX Interpreter pour Linux, version 2.1. Une instance 32 bits sur DB2 UDB pour distributions Linux pour x86-64 basées noyau Linux 2.6 prend en charge les langages de programmation et compilateurs suivants : C GNU/Linux gcc version 3.3 Remarque : L'option de compilateur "-m32" doit être utilisée pour générer des applications ou des routines 32 bits (procédures mémorisées et fonctions définies par l'utilisateur). C++ GNU/Linux g++ version 3.3 Remarques : 1. Ces versions du compilateur GNU/Linux g++ n'acceptent pas de paramêtres ayant des valeurs d'entiers pour certaines fonctions fstream. Pour plus d'informations, voir la documentation du compilateur. 2. L'option de compilateur "-m32" doit être utilisée pour générer des applications ou des routines 32 bits (procédures mémorisées et fonctions définies par l'utilisateur). Java IBM Developer Kit and Runtime Environment pour Linux x86, Java 2 Technology Edition, Service Release 4 de la version 1.3.1, version 32 bits, et Service Release 1 de la version 1.4.1, version 32 bits. Remarque : DB2 UDB installe la dernière version prise en charge du kit du développeur si celui-ci n'est pas déjà installé, à moins que l'installation DB2 UDB ne soit une mise à jour d'une précédente installation de la version 8 de DB2 UDB. Si une précédente installation de la version 8 de DB2 UDB est mise à jour, le kit du développeur pris en charge doit être installé manuellement à partir du CD-ROM. Perl Perl 5.8 PHP PHP 4.3.4 ou supérieure. Une instance 64 bits sur DB2 UDB pour distributions Linux pour x86-64 basées noyau Linux 2.6 prend en charge les langages de programmation et compilateurs suivants : C GNU/Linux gcc version 3.3 C++ GNU/Linux g++ version 3.3 Remarque : Ces versions du compilateur GNU/Linux g++ n'acceptent pas de paramêtres ayant des valeurs d'entiers pour certaines fonctions fstream. Pour plus d'informations, voir la documentation du compilateur. Java Actuellement, DB2 UDB ne prend en charge aucun kit du développeur Java 64 bits pour Linux pour x86-64. Perl Perl 5.8 PHP PHP 4.3.4 ou supérieure. Personnalisation des options de précompilation et de définition d'accès pour les procédures SQL Les options de précompilation et de définition d'accès pour les procédures SQL peuvent être personnalisées en attribuant une valeur à la variable DB2_SQLROUTINE_PREPOPTS de registre DB2 au niveau de l'instance. On utilise pour cela la commande : db2set DB2_SQLROUTINE_PREPOPTS= Outre les options documentées dans la Version 8.2, l'option REOPT est admise : BLOCKING {UNAMBIG | ALL | NO} DATETIME {DEF | USA | EUR | ISO | JIS | LOC} DEGREE {1 | degree-of-parallelism | ANY} DYNAMICRULES {BIND | RUN} EXPLAIN {NO | YES | ALL} EXPLSNAP {NO | YES | ALL} FEDERATED {NO | YES} INSERT {DEF | BUF} ISOLATION {CS | RR | UR | RS | NC} QUERYOPT optimization-level REOPT {ALWAYS | NONE | ONCE} VALIDATE {RUN | BIND} Option de compilation C/C++ requise (Linux on POWER 64 bits) L'option de compilateur "-m64" est requise lors de l'utilisation de gcc/g++ pour construire des applications et des routines C/C++ pour une instance 64 bits de DB2 Universal Database pour Linux on POWER. L'option de compilateur "-q64" est requise lors de l'utilisation de xlc/xlC pour construire des applications et des routines C/C++ pour une instance 64 bits de DB2 Universal Database pour Linux on POWER. Commande de compilation et de liaison pour les procédures mémorisées Micro Focus COBOL (HP-UX) La commande de compilation et de liaison présentée dans la documentation DB2 Universal Database version 8.2 permettant de construire des procédures mémorisées à l'aide de Micro Focus COBOL sur HP-UX est incorrecte. La commande de compilation que contient le script en cours sqllib/samples/cobol_mf/bldrtn est correcte. Les commandes de compilation et de liaison sont désormais regroupées dans une seule commande, qui utilise l'option -y afin de préciser que la sortie souhaitée est une bibliothèque partagée. Version minimale de Micro Focus COBOL (HP-UX) prise en charge La version minimale du compilateur Micro Focus COBOL prise en charge et le temps de chargement sur HP-UX est Micro Focus Server Express 2.2 - Service Pack 1 plus le kit de mise à jour Fixpack22.02_14 for HP-UX PA-RISC 11.x (32/64bit). Ce correctif est disponible sur le site Web Micro Focus Support Line http://supportline.microfocus.com . Définition des variables d'environnement pour les procédures mémorisées Micro Focus COBOL (Windows) Pour exécuter les routines externes Micro Focus COBOL sous Windows, il est nécessaire de faire en sorte que les variables d'environnement Micro Focus COBOL soient définies de manière permanente en tant que variables système. Procédure Pour définir des variables d'environnement en variables système, procédez comme suit : 1. Ouvrez le panneau de configuration 2. Sélectionnez système 3. Sélectionnez l'onglet Avancé 4. Cliquez sur Variables d'environnement 5. Ajoutez les variables dans la liste Variables système Il est insuffisant de définir les variables d'environnement dans la liste Variables utilisateur, à l'invite, ou dans un script. Développement d'applications : CLI (Call Level Interface) Mot clé de configuration CLI/ODBC Trusted_Connection Description du mot clé : Il permet à l'utilisateur autorisé en cours d'établir une connexion. Syntaxe : Trusted_Connection=Yes Remarque : Ce mot clé n'a pas d'effet s'il est défini dans le fichier db2cli.ini. Par contre il doit être fourni dans la chaîne de connexion au niveau de la fonction SQLDriverConnect(). Paramêtre par défaut : DB2 CLI utilise les informations de mot de passe et d'ID d'utilisateur fournies dans la chaîne de connexion au niveau de la fonction SQLDriverConnect(), et non pas celles de l'utilisateur autorisé en cours. Remarques sur la syntaxe : En règle générale, les applications DB2 CLI se connectent à une base de données à l'aide de la fonction SQLDriverConnect(). L'un des arguments d'entrée de cette fonction, la valeur DriverCompletion, détermine le moment de l'ouverture d'une fenêtre. Les différentes valeurs de DriverCompletion sont les suivantes : * SQL_DRIVER_PROMPT : Une boîte de dialogue est toujours lancée. * SQL_DRIVER_COMPLETE : Une boîte de dialogue est lancée uniquement si la chaîne de connexion ne comporte pas suffisamment d'informations. * SQL_DRIVER_COMPLETE_REQUIRED : Une boîte de dialogue est lancée uniquement si la chaîne de connexion ne comporte pas suffisamment d'informations. Elle comporte uniquement des informations obligatoires. L'utilisateur est invité à fournir ces informations obligatoires. * SQL_DRIVER_NOPROMPT : L'utilisateur n'est pas invité à fournir d'information. Une tentative de connexion est effectuée en tenant compte des informations contenues dans la chaîne de connexion. En cas d'informations insuffisantes, une erreur SQL_ERROR est retournée. Remarque : Vous trouverez des informations détaillées sur la valeur DriverCompletion dans la documentation de SQLDriverConnect(). Certaines applications, celles de l'environnement Kerberos par exemple, nécessitent qu'un utilisateur puisse se connecter à un serveur DB2 UDB sans fournir d'ID utilisateur ou de mot de passe. Si l'application utilise l'option SQL_DRIVER_NO_PROMPT pour appeler la fonction SQLDriverConnect(), une tentative de connexion est effectuée sans authentification d'utilisateur. Par conséquent, ce mot clé n'est pas nécessaire. Si une application tierce est impliquée et que le niveau d'invite de l'application est différent de SQL_DRIVER_NO_PROMPT, DB2 CLI ouvre une fenêtre pour demander les informations manquantes. Si vous définissez Trusted_Connection sur Yes, dans la chaîne de connexion d'entrée pour la fonction SQLDriverConnect() ("Trusted_Connection=Yes"), DB2 CLI ignore toute chaîne d'ID utilisateur et de mot de passe (y compris les chaînes vierges) de la chaîne de connexion et ignore le niveau d'invite de la fonction de connexion. DB2 CLI prend en compte l'utilisateur autorisé en cours pour relancer une tentative de connexion à la base de données. Si cette tentative échoue, l'utilisateur est invité à fournir son ID et son mot de passe. Ce mot clé est utilisé uniquement dans la chaîne de connexion pour la fonction SQLDriverConnect(). Si vous le définissez dans le fichier db2cli.ini, il n'a aucun effet. mise à jour de table de diagnostics pour la fonction SQLDescribeParam (CLI) La fonction SQLDescribeParam() renvoie la description d'un marqueur de paramêtre associé à une instruction SQL préparée. La table de diagnostics a été mise à jour avec SQLSTATE HYC00. Diagnostics Tableau 24. Etats SQL SQLDescribeParam +--------+-------------------+----------------------------------------+ | Etat | Description | Explications | | SQL | | | +--------+-------------------+----------------------------------------+ | HYC00 | Incapacité du | Les procédures mémorisées de la | | | pilote | fonction de schéma ne sont pas | | | | accessibles sur le serveur. Vous devez | | | | installer les procédures mémorisées de | | | | la fonction de schéma sur le serveur | | | | et vérifier qu'elles deviennent | | | | accessibles. | +--------+-------------------+----------------------------------------+ Exécution asynchrone de Call Level Interface DB2 Call Level Interface (DB2 CLI) peut exécuter un sous-ensemble de fonctions de façon asynchrone. Le pilote DB2 CLI redonne le contrôle à l'application après l'appel de la fonction mais avant la fin de l'exécution de cette fonction. La fonction renvoie SQL_STILL_EXECUTING chaque fois qu'elle est appelée et jusqu'à la fin de l'exécution ; à ce moment-là, elle renvoie une valeur différente (par exemple, SQL_SUCCESS). Une exécution asynchrone est profitable uniquement sur des systèmes d'exploitation monoprocessus. Les applications exécutées sur des systèmes d'exploitation multiprocessus doivent exécuter les fonctions sur des unités d'exécution séparées. L'exécution asynchrone est possible pour les fonctions qui envoient normalement une requête au serveur, puis attendent une réponse. Plutôt que d'attendre, une fonction s'exécutant de façon asynchrone rend le contrôle à l'application. L'application effectue alors d'autres tâches, ou renvoie le contrôle au système d'exploitation ; à l'aide d'une interruption, elle interroge plusieurs fois la fonction jusqu'à la réception d'un code de retour autre que SQL_STILL_EXECUTING. La prise en charge de l'exécution asynchrone de l'interface CLI est incluse dans DB2 Universal Database (UDB), à partir du FixPak 1 de la version 8.2 (équivalente de la version 8.1, FixPak 8). Vous trouverez de la documentation relative à cette fonction sur le centre de documentation DB2 UDB Version 7 à l'adresse suivante : http://publib.boulder.ibm.com/infocenter/db2v7luw/index.jsp. L'ensemble des informations que contient la documentation de la version 7 s'applique au FixPak 1 de la version 8.2 (équivalente de la version 8.1, FixPak 8) et supérieur. Le Centre de documentation de la version 8 de DB2 ne contient aucune autre documentation relative à cette fonction. Attribut de connexion SQL_ATTR_PING_DB SQL_ATTR_PING_DB (DB2 CLI v 8.2) SQL_ATTR_PING_DB est un nombre entier 32 bits qui est utilisé avec la fonction SQLGetConnectAttr() afin d'obtenir le temps de réponse du réseau de la connexion existante entre le client DB2 UDB et le serveur DB2 UDB. Le temps de réponse est reporté en microsecondes. Si une connexion a été préalablement établie et supprimée par la base de données, la valeur reportée est 0. Si la connexion a été arrêtée par l'application, alors la valeur SQLSTATE reportée est 08003. Cet attribut de connexion peut être renvoyé par SQLGetConnectAttr(), mais ne peut pas être défini par SQLSetConnectAttr(). Toute tentative de définition de cet attribut va engendrer une valeur SQLSTATE de HYC00 (Incapacité du pilote). Fonction SQLBindParameter (CLI) Dans la documentation de la fonction SQLBindParameter, la description contenue dans la section du paramêtre d'entrée est incorrecte. La description correcte est la suivante : Paramêtre d'entrée Un paramêtre ColumnSize de 0 signifie que DB2 CLI va utiliser la longueur maximale pour le type SQL, comme taille de la colonne ou paramêtre de procédure mémorisée. DB2 CLI va effectuer toute conversion nécessaire avec cette taille. Fonction SQLMoreResults (CLI) Dans la documentation relative à la fonction SQLMoreResults, la référence à l'attribut d'instruction SQL_ATTR_ROW_ARRAY_SIZE est incorrecte. L'attribut d'instruction correct est SQL_ATTR_PARAMSET_SIZE. La section Utilisation doit être comprise comme suit : Cette fonction est utilisée pour renvoyer plusieurs ensembles de résultats multiples de façon séquentielle sur l'exécution : * D'une requête paramétrée avec une matrice de valeurs de paramêtre d'entrée spécifiée par l'attribut d'instruction SQL_ATTR_PARAMSET_SIZE et SQLBindParameter() Attributs d'environnement supplémentaires Les attributs CLI ci-après sont non seulement des attributs de connexion CLI mais aussi des attributs d'environnement CLI : * SQL_ATTR_INFO_ACCTSTR * SQL_ATTR_INFO_APPLNAME * SQL_ATTR_INFO_USERID * SQL_ATTR_INFO_WRKSTNNAME Pour des informations sur ces attributs, voir la documentation sur les attributs de connexion CLI dans le Centre de documentation DB2 ou dans le manuel CLI Guide and Reference Volume 2. Curseurs flottants dynamiques Pour effectuer des mises à jour et des suppressions de ligne dans l'ensemble de résultats d'un curseur flottant dynamique, l'instruction UPDATE ou DELETE doit inclure toutes les colonnes d'au moins une clé unique dans la table de base. Il peut s'agir de la clé primaire ou de toute autre clé unique. Mot clé de configuration RetCatalogAsCurrServer CLI/ODBC Description du mot clé : Les foncions de catalogue renvoient la valeur CURRENT SERVER au lieu de la valeur Null pour les colonnes de catalogue. Syntaxe du mot clé db2cli.ini : RetCatalogAsCurrServer= 0 | 1 Paramêtre par défaut : Si le système DBMS cible renvoie une valeur Null pour les colonnes de catalogue, la valeur CURRENT SERVER ne sera pas remplacée. Remarques sur la syntaxe : Si les fonctions de catalogue pour le système DBMS cible renvoient une valeur Null pour les colonnes de catalogue, la définition de RetCatalogAsCurrServer sur 1 a pour résultat le renvoi par le DBMS d'une valeur CURRENT SERVER. * 0 = les fonctions de catalogue renvoient une valeur Null pour les colonnes de catalogue (par défaut). * 1 = les fonctions de catalogue renvoient la valeur CURRENT SERVER, au lieu de la valeur Null, pour les colonnes de catalogue. Par exemple, supposons que la fonction de catalogue SQLTables() renvoie un ensemble de résultats dans lequel les valeurs de la colonne TABLE_CAT sont des valeurs Null. La définition de RetCatalogAsCurrServer sur 1 engendre le renvoi par le système DBMS d'une valeur CURRENT SERVER dans la colonne TABLE_CAT. Remarque : Ce mot clé est pris en charge par le FixPak 3 de la version 8.2 de DB2 UDB pour Linux, UNIX et Windows (équivalente de la version 8.1, FixPak 10) et supérieure. Mot clé de configuration CLI/ODBC ReceiveTimeout Description du mot clé : Indique le délai d'attente en secondes pour une réponse du serveur sur une connexion établie avant la fin de la tentative et la génération d'une erreur de délai d'attente de communication. Syntaxe du mot clé db2cli.ini : ReceiveTimeout = 0 | 1 | 2 | ... | 32767 Paramêtre par défaut : Le client attend indéfiniment une réponse du serveur sur une connexion établie. Attribut de connexion équivalent : SQL_ATTR_RECEIVE_TIMEOUT Remarques sur la syntaxe : La valeur par défaut 0 indique que le client attend indéfiniment une réponse. Le délai d'attente de réception n'a aucun effet lors de l'établissement de la connexion ; il est pris en charge uniquement pour TCP/IP et est ignoré pour tout autre protocole. Attribut de connexion SQL_ATTR_RECEIVE_TIMEOUT SQL_ATTR_RECEIVE_TIMEOUT (DB2 CLI v8) Valeur d'entier 32 bits correspondant au nombre de secondes de délai d'attente d'un client pour la réponse d'un serveur sur une connexion établie et ce, avant la fin de la tentative et la génération d'une erreur de délai d'attente de communication. La valeur par défaut 0 indique que le client attend indéfiniment une réponse. Le délai d'attente de réception n'a aucun effet lors de l'établissement de la connexion ; il est pris en charge uniquement pour TCP/IP et est ignoré pour tout autre protocole. Les valeurs admises sont des entiers compris entre 0 et 32 767. Mot clé de configuration CLI/ODBC Reopt Description du mot clé : Active l'optimisation de requête ou la réoptimisation des instructions SQL comportant des registres ou des marqueurs de paramêtre spéciaux. Syntaxe du mot clé db2cli.ini : Reopt = 2 | 3 | 4 Paramêtre par défaut : Aucune optimisation de requête ne se produit pendant le temps d'exécution des requêtes. Les évaluations par défaut choisies par le compilateur sont utilisées pour des registres ou des marqueurs de paramêtre spéciaux. Attribut de connexion et d'instruction équivalent : SQL_ATTR_REOPT Remarques sur la syntaxe : L'optimisation se produit lorsque les valeurs disponibles lors de l'exécution des requêtes pour les registres ou marqueurs de paramêtre spéciaux sont utilisées à la place des évaluations par défaut choisies par le compilateur. Les valeurs admises pour le mot clé sont les suivantes : * 2 = SQL_REOPT_NONE. Il s'agit de la valeur par défaut. Aucune optimisation de requête ne se produit pendant le temps d'exécution des requêtes. Les évaluations par défaut choisies par le compilateur sont utilisées pour les registres ou marqueurs de paramêtre spéciaux. L'ensemble par défaut "NULLID " permet d'exécuter les instructions SQL dynamiques. * 3 = SQL_REOPT_ONCE. L'optimisation de requête se produit une fois pendant le temps d'exécution de la requête lorsque celle-ci est exécutée pour la première fois. L'ensemble "NULLIDR1", qui est lié à l'option REOPT ONCE, est utilisé. * 4 = SQL_REOPT_ALWAYS. L'optimisation de requête ou la réoptimisation se produit pendant le temps d'exécution chaque fois que la requête est exécutée. L'ensemble "NULLIDRA", qui est lié à l'option REOPT ALWAYS, est utilisé. "NULLIDR1" et "NULLIDRA" sont des noms réservés ; lorsqu'ils sont utilisés, les options REOPT ONCE et REOPT ALWAYS sont respectivement utilisées implicitement. Ces ensembles doivent être créés explicitement à l'aide des commandes suivantes : db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA Si les mots clés Reopt et CurrentPackageSet sont tous deux indiqués, CurrentPackageSet est prioritaire. Attribut de connexion et d'instruction SQL_ATTR_REOPT SQL_ATTR_REOPT (DB2 CLI v8) Valeur d'entier 32 bits qui active l'optimisation de requête pour les instructions SQL contenant des registres ou des marqueurs de paramêtre spéciaux. L'optimisation se produit lorsque les valeurs disponibles lors de l'exécution des requêtes pour les registres ou marqueurs de paramêtre spéciaux sont utilisées à la place des évaluations par défaut choisies par le compilateur. Les valeurs admises pour l'attribut sont les suivantes : * 2 = SQL_REOPT_NONE. Il s'agit de la valeur par défaut. Aucune optimisation de requête ne se produit pendant le temps d'exécution des requêtes. Les évaluations par défaut choisies par le compilateur sont utilisées pour les registres ou marqueurs de paramêtre spéciaux. L'ensemble par défaut "NULLID " permet d'exécuter les instructions SQL dynamiques. * 3 = SQL_REOPT_ONCE. L'optimisation de requête se produit une fois pendant le temps d'exécution de la requête lorsque celle-ci est exécutée pour la première fois. L'ensemble "NULLIDR1", qui est lié à l'option REOPT ONCE, est utilisé. * 4 = SQL_REOPT_ALWAYS. L'optimisation de requête ou la réoptimisation se produit pendant le temps d'exécution chaque fois que la requête est exécutée. L'ensemble "NULLIDRA", qui est lié à l'option REOPT ALWAYS, est utilisé. "NULLIDR1" et "NULLIDRA" sont des noms réservés ; lorsqu'ils sont utilisés, les options REOPT ONCE et REOPT ALWAYS sont respectivement utilisées implicitement. Ces ensembles doivent être créés explicitement à l'aide des commandes suivantes : db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA SQL_ATTR_REOPT et SQL_ATTR_CURRENT_PACKAGE_SET s'excluent mutuellement ; aussi, lorsque l'un est défini, l'autre n'est pas autorisé. Mot clé de configuration CLI/ODBC CurrentPackageSet Description du mot clé : Lance l'instruction SET CURRENT PACKAGESET après chaque connexion. Syntaxe du mot clé db2cli.ini : CurrentPackageSet = nom de schéma Paramêtre par défaut : La clause n'est pas jointe. Attribut de connexion équivalent : SQL_ATTR_CURRENT_PACKAGE_SET Remarques sur la syntaxe : Cette option lance l'instruction SQL SET CURRENT PACKAGESET avec la valeur CurrentPackageSet après chaque connexion à une base de données. Par défaut, cette clause n'est pas jointe. L'instruction SQL SET CURRENT PACKAGESET définit le nom de schéma (identificateur de collection) utilisé pour la sélection du package qui sera utilisé pour les instructions SQL suivantes. Les applications CLI/ODBC lancent des instructions SQL dynamiques. Cette option vous permet de contrôler les privilèges utilisés pour exécuter ces instructions : * Choisissez un schéma à utiliser lors de l'exécution d'instructions SQL à partir d'applications CLI/ODBC. * Assurez-vous que les objets du schéma ont les privilèges souhaités, puis redéfinissez les accès en conséquence. * Affectez l'option CurrentPackageSet à ce schéma. Les instructions SQL lancées à partir des applications CLI/ODBC vont désormais s'exécuter sous le schéma indiqué et utiliser les privilèges définis ici. Les noms d'ensemble suivants sont réservés : "NULLID ", "NULLIDR1" et "NULLIDRA". Si les mots clés Reopt et CurrentPackageSet sont tous deux indiqués, CurrentPackageSet est prioritaire. Attribut de connexion SQL_ATTR_CURRENT_PACKAGE_SET SQL_ATTR_CURRENT_PACKAGE_SET (DB2 CLI v5) Chaîne de caractères à terminaison nulle qui indique le nom de schéma (identificateur de collection) utilisé pour la sélection du package pour les instructions SQL suivantes. La définition de cet attribut entraîne le lancement de l'instruction SQL SET CURRENT PACKAGESET. Si cet attribut est défini avant une connexion, l'instruction SQL SET CURRENT PACKAGESET sera lancée au moment de la connexion. Les applications CLI/ODBC lancent des instructions SQL dynamiques. Cet attribut de connexion vous permet de contrôler les privilèges utilisés pour exécuter ces instructions : * Choisissez un schéma à utiliser lors de l'exécution d'instructions SQL à partir d'applications CLI/ODBC. * Assurez-vous que les objets du schéma ont les privilèges souhaités, puis redéfinissez les accès en conséquence. En d'autres termes, il s'agit de lier les packages CLI (sqllib/bnd/db2cli.lst) à l'aide de l'option COLLECTION . Pour plus d'informations, voir la commande BIND. * Affectez l'option CURRENTPACKAGESET à ce schéma. Les instructions SQL lancées à partir des applications CLI/ODBC vont désormais s'exécuter sous le schéma indiqué et utiliser les privilèges définis ici. La définition du mot clé de configuration CLI/ODBC CURRENTPACKAGESET constitue une alternative à l'indication du nom de schéma. Les noms d'ensemble suivants sont réservés : "NULLID ", "NULLIDR1" et "NULLIDRA". SQL_ATTR_REOPT et SQL_ATTR_CURRENT_PACKAGE_SET s'excluent mutuellement ; aussi, lorsque l'un est défini, l'autre n'est pas autorisé. Mot clé de configuration CLI/ODBC MapBigintCDefault Description du mot clé : Indiquez le type C par défaut des colonnes BIGINT et des marqueurs de paramêtre. Syntaxe du mot clé db2cli.ini : MapBigintCDefault = 0 | 1 | 2 Paramêtre par défaut : La représentation du type C par défaut des données BIGINT est SQL_C_BIGINT. Remarques sur la syntaxe : MapBigintCDefault contrôle le type C utilisé lorsque SQL_C_DEFAULT est spécifié pour les colonnes BIGINT et les marqueurs de paramêtre. Il est recommandé d'utiliser ce mot clé principalement avec les applications Microsoft (Microsoft Access, par exemple) qui ne gèrent pas les entiers à 8 octets. Définissez MapBigintCDefault comme suit : * 0 - pour la représentation du type C SQL_C_BIGINT par défaut * 1 - pour une représentation du type C SQL_C_CHAR * 2 - pour une représentation du type C SQL_C_WCHAR C Ce mot clé influence le comportement des fonctions CLI où SQL_C_DEFAULT a pu être spécifié en tant que type C (SQLBindParameter(), SQLBindCol() et SQLGetData(), par exemple). Mot clé de configuration CLI/ODBC DescribeOutputLevel Description du mot clé : Définissez le niveau des informations de description de la colonne de résultat requises par le pilote CLI lors de la préparation ou de la description des requêtes. Syntaxe du mot clé db2cli.ini : DescribeOutputLevel = 0 | 1 | 2 | 3 Paramêtre par défaut : Demandez les informations de description répertoriées dans le niveau 2 de Tableau 25. Remarques sur la syntaxe : Ce mot clé permet de contrôler la quantité d'informations que demande le pilote CLI lors d'une requête de préparation ou de description. Par défaut, lorsque le serveur reçoit une requête de description, il renvoie les informations contenues dans le niveau 2 de Tableau 25 pour les colonnes d'ensemble de résultats. Toutefois, il se peut qu'une application n'aie pas besoin de toutes ces informations ou aie besoin d'informations supplémentaires. Si vous définissez le mot clé DescribeOutputLevel à un niveau répondant aux besoins du client, l'application peut améliorer les performances car les données de description transférées entre le client et le serveur sont limitées à la quantité minimale que requiert l'application. Si la valeur attribuée à describeOutputLevel est trop basse, la fonctionnalité de l'application peut en être affectée (en fonction de la configuration requise de l'application). Les fonctions CLI permettant d'extraire les informations de description ne peuvent pas échouer dans ce cas, mais les informations renvoyées risquent d'être incomplètes. Les paramêtres pris en charge pour DescribeOutputLevel sont les suivants : * 0 - Aucune information de description n'est renvoyée à l'application client * 1 - Des informations de description catégorisées au niveau 1 (voir Tableau 25) sont renvoyées à l'application client * 2 - (Valeur par défaut) Des informations de description catégorisées au niveau 2 (voir Tableau 25) sont renvoyées à l'application client * 3 - Des informations de description catégorisées au niveau 3 (voir Tableau 25) sont renvoyées à l'application client Le tableau ci-dessous répertorie les zones qui forment les informations de description que le serveur renvoie lorsqu'il reçoit une requête de préparation ou de description. Ces zones sont regroupées en niveaux, et le mot clé de configuration CLI/ODBC DescribeOutputLevel contrôle les niveaux d'informations de description que demande le pilote CLI. Remarque : Les niveaux d'informations de description ne sont pas tous pris en charge par tous les serveurs DB2. Ils sont tous pris en charge par les serveurs DB2 suivants : DB2 Universal Database (UDB) pour Linux, UNIX, et Windows version 8 et ultérieure, DB2 UDB pour z/OS version 8 et ultérieure, et DB2 UDB pour iSeries version 5, édition 3 et ultérieure. Tous les autres serveurs DB2 ne prennent en charge que le paramêtre 2 ou 0 pour DescribeOutputLevel. Tableau 25. Niveaux des informations de description +-----------------------+----------------------+----------------------+ | Niveau 1 | Niveau 2 | Niveau 3 | +-----------------------+----------------------+----------------------+ | SQL_DESC_COUNT | toutes les zones | toutes les zones | | SQL_COLUMN_COUNT | du niveau 1 et : | des niveaux 1 et 2 | | SQL_DESC_TYPE | SQL_DESC_NAME | et : | | SQL_DESC_CONCISE_TYPE | SQL_DESC_LABEL | SQL_DESC_BASE_COLUMN | | SQL_COLUMN_LENGTH | SQL_COLUMN_NAME | _NAME | | SQL_DESC_OCTET_LENGTH | SQL_DESC_UNNAMED | SQL_DESC_UPDATABLE | | SQL_DESC_LENGTH | SQL_DESC_TYPE_NAME | SQL_DESC_AUTO_UNIQUE | | SQL_DESC_PRECISION | SQL_DESC_DISTINCT_TY | _VALUE | | SQL_COLUMN_PRECISION | PE | SQL_DESC_SCHEMA_NAME | | SQL_DESC_SCALE | SQL_DESC_REFERENCE_T | SQL_DESC_CATALOG_NAM | | SQL_COLUMN_SCALE | YPE | E | | SQL_DESC_DISPLAY_SIZE | SQL_DESC_STRUCTURED_ | SQL_DESC_TABLE_NAME | | SQL_DESC_NULLABLE | TYPE | SQL_DESC_BASE_TABLE_ | | SQL_COLUMN_NULLABLE | SQL_DESC_USER_TYPE | NAME | | SQL_DESC_UNSIGNED | SQL_DESC_LOCAL_TYPE_ | | | SQL_DESC_SEARCHABLE | NAME | | | SQL_DESC_LITERAL_SUFF | SQL_DESC_USER_DEFINE | | | IX | D_ | | | SQL_DESC_LITERAL_PREF | TYPE_CODE | | | IX | | | | SQL_DESC_CASE_SENSITI | | | | VE | | | | SQL_DESC_FIXED_PREC_S | | | | CALE | | | +-----------------------+----------------------+----------------------+ Développement d'application : Programmation des applications client Connectivité du pilote JDBC DB2 Universal Type 4 à DB2 VM/VSE non prise en charge Le pilote JDBC DB2 Universal ne prend pas en charge la connectivité de type 4 à DB2 pour les bases de données VM/VSE. Les rubriques intitulées "Setting up the Windows Java environment" et "Installing the DB2 Universal JDBC Driver" du manuel Application Development Guide: Programming Client Applications, ainsi que le centre de documentation DB2 UDB indiquent à tort que le pilote JDBC DB2 Universal prend en charge cette connectivité de type 4 à DB2 pour les bases de données VM/VSE. Concentrateur de connexions du pilote JDBC de DB2 Universal et équilibrage des charges de travail Sysplex Les applications Java qui utilisent DB2 Universal JDBC Driver type 4 connectivity pour accéder aux serveurs DB2 UDB pour z/OS profitent des fonctions du concentrateur de connexions et d'équilibrage des charges de travail Sysplex. Ces fonctions sont identiques aux fonctions du concentrateur de connexions et d'équilibrage des charges de travail Sysplex de DB2 Connect. Le concentrateur de connexions Pilote JDBC universel DB2 permet de réduire les ressources nécessaires aux serveurs de base de données de DB2 UDB pour z/OS pour prendre en charge de nombreuses applications client ; il permet à de nombreux objets de connexion d'utiliser la même connexion physique, ce qui réduit le nombre total de connexions physiques au serveur de base de données. L'équilibrage des charges de travail Sysplex Pilote JDBC universel DB2 permet d'améliorer la disponibilité d'un groupe de partage des données car le pilote obtient souvent des informations d'état concernant les membres d'un groupe de partage de données. Le pilote utilise cette information pour déterminer le membre du partage de données vers lequel il doit acheminer la transaction suivante. Avec l'équilibrage des charges de travail Sysplex, le serveur DB2 UDB pour z/OS et Workload Manager pour z/OS (WLM) garantissent une distribution efficace du travail parmi les membres du groupe de partage de données et la transmission du travail à un autre membre d'un groupe de partage de données si un membre subit un incident. Pilote JDBC universel DB2 utilise des objets de transfert et un groupe d'objets de transfert global pour prendre en charge le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Un objet de transfert existe pour chaque connexion physique au serveur de base de données. Lorsque vous activez le concentrateur de connexion et l'équilibrage des charges de travail Sysplex, vous définissez le nombre maximal de connexions physiques au serveur de base de données à n'importe quel point de cohérence en définissant le nombre maximal d'objet de transfert. Au niveau du pilote, vous définissez des limites pour le nombre d'objets de transfert à l'aide des propriétés de configuration Pilote JDBC universel DB2. Au niveau de la connexion, vous activez et désactivez l'équilibrage des charges de travail Sysplex et le concentrateur de connexions Pilote JDBC universel DB2, puis définissez les limites du nombre d'objets de transfert à l'aide des propriétés DataSource. Vous pouvez contrôler le groupe d'objets de transfert global par l'une des deux méthodes suivantes : * A l'aide de programmes trace que vous démarrez lorsque vous utilisez les propriétés de configuration de Pilote JDBC universel DB2 * A l'aide d'une interface de programmation d'application Propriétés de configuration de Pilote JDBC universel DB2 pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex Chacune des propriétés de configuration suivante est utilisée pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex db2.jcc.dumpPool Indique les types de statistiques qui sont écrites pour les événements de groupe de transfert global, outre les statistiques simplifiées qui sont écrites. Le groupe de transfert global est utilisé pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Le type de données de db2.jcc.dumpPool est un nombre entier (ent.). Les propriétés de configuration db2.jcc.dumpPoolStatisticsOnSchedule et db2.jcc.dumpPoolStatisticsOnScheduleFile doivent également être définies pour le processus d'écriture des statistiques avant l'écriture de toute statistique. Vous pouvez indiquer un ou plusieurs types de statistiques suivants avec la propriété db2.jcc.dumpPool : * DUMP_REMOVE_OBJECT (hexadécimal : X'01', décimal : 1) * DUMP_GET_OBJECT (hexadécimal : X'02', décimal : 2) * DUMP_WAIT_OBJECT (hexadécimal : X'04', décimal : 4) * DUMP_SET_AVAILABLE_OBJECT (hexadécimal : X'08', décimal : 8) * DUMP_CREATE_OBJECT (hexadécimal : X'10', décimal : 16) * DUMP_SYSPLEX_MSG (hexadécimal : X'20', décimal : 32) * DUMP_POOL_ERROR (hexadécimal : X'80', décimal : 128) Pour suivre plus d'un type d'événement, ajoutez les valeurs pour les types d'événements dont vous souhaitez exécuter la trace. Par exemple, supposons que vous souhaitiez suivre les événements DUMP_GET_OBJECT et DUMP_CREATE_OBJECT. Les équivalents numériques de ces valeurs sont 2 et 16 ; par conséquent, vous devez indiquer 18 pour la valeur db2.jcc.dumpPool. La valeur par défaut est 0, ce qui signifie que les statistiques simplifiées uniquement sont écrites pour le groupe de transfert global. db2.jcc.dumpPoolStatisticsOnSchedule Vous devez indiquer la fréquence d'écriture, en secondes, des statistiques du groupe de transfert global vers le fichier indiqué par la propriété de configuration db2.jcc.dumpPoolStatisticsOnScheduleFile. Le groupe de transfert global est utilisé pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. La valeur par défaut est -1, ce qui signifie que les statistiques du groupe de transfert global ne sont pas écrites. db2.jcc.dumpPoolStatisticsOnScheduleFile Indique le nom du fichier dans lequel les statistiques du groupe de transfert global sont écrites. Le groupe de transfert global est utilisé pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Si la propriété de configuration db2.jcc.dumpPoolStatisticsOnScheduleFile n'est pas indiquée, les statistiques du groupe de transfert global ne sont pas écrites. db2.jcc.maxTransportObjectIdleTime Indique la durée, en secondes, de la présence d'un objet de transfert inutilisé dans un groupe de transfert global avant de pouvoir le supprimer du groupe. Les objets de transfert sont utilisés pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. La valeur par défaut de la propriété de configuration db2.jcc.maxTransportObjectIdleTime est définie sur 60. La définition du paramêtre db2.jcc.maxTransportObjectIdleTime sur une valeur inférieure à 0 engendre la suppression immédiate des objets de transfert inutilisés dans le groupe. Cette action n'est pas recommandée parce qu'elle peut engendrer une perte de performances considérable. db2.jcc.maxTransportObjectWaitTime Indique le délai d'attente maximal, en secondes, d'une application pour un objet de transfert si la valeur db2.jcc.maxTransportObjects a été atteinte. Les objets de transfert sont utilisés pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Lorsqu'une application attend plus longtemps que la valeur db2.jcc.maxTransportObjectWaitTime, le groupe d'objet de transfert global émet une exception SQL. La valeur par défaut de la propriété de configuration db2.jcc.maxTransportObjectWaitTime est définie sur -1. Toute valeur négative signifie que les applications attendent toujours. db2.jcc.maxTransportObjects Indique la limite supérieure du nombre d'objets de transfert dans un groupe d'objets de transfert global pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Lorsque le nombre d'objets de transfert d'un groupe atteint la valeur du paramêtre db2.jcc.maxTransportObjects, les objets de transfert qui n'ont pas été utilisés pendant une durée supérieure à la valeur définie dans db2.jcc.maxTransportObjectIdleTime sont supprimés du groupe. La valeur par défaut de la propriété de configuration db2.jcc.maxTransportObjects est définie sur -1, ce qui signifie qu'aucune limite n'existe pour le nombre d'objets de transfert dans le groupe d'objets de transfert global. db2.jcc.minTransportObjects Indique la limite inférieure du nombre d'objets de transfert dans un groupe d'objets de transfert global pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. Lorsqu'une machine JVM est créée, le groupe ne contient aucun objet de transfert. Les objets de transfert sont ajoutés au groupe au besoin. Lorsque la valeur du paramêtre db2.jcc.minTransportObjects est atteinte, le nombre d'objet de transfert du groupe d'objets de transfert global ne descend jamais en dessous de la valeur du paramêtre db2.jcc.minTransportObjects pendant toute la durée de l'utilisation de la machine JVM. La valeur par défaut de la propriété de configuration du paramêtre db2.jcc.minTransportObjects est définie sur 0. Toute valeur inférieure ou égale à 0 signifie que le groupe d'objets de transfert global peut se vider. Propriétés DataSource Pilote JDBC universel DB2 pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex Chacune des propriétés DataSource Pilote JDBC universel DB2 suivantes est utilisée pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. enableConnectionConcentrator Indique si la fonction du concentrateur de connexions du Pilote JDBC universel DB2 est activée. La fonction du concentrateur de connexions est disponible uniquement pour les connexions aux serveurs DB2 UDB pour z/OS. Le type de données de la propriété enableConnectionConcentrator est une valeur booléenne. La valeur par défaut est false. Toutefois, si enableSysplexWLB est définie sur true, la valeur par défaut est true. enableSysplexWLB Indique si la fonction de l'équilibrage des charges de travail Sysplex du Pilote JDBC universel DB2 est activée. La fonction de l'équilibrage des charges de travail Sysplex est disponible uniquement pour les connexions aux serveurs DB2 UDB pour z/OS. Le type de données de la propriété enableSysplexWLB est une valeur booléenne. La valeur par défaut est false. Toutefois, si enableSysplexWLB est définie sur true, enableConnectionConcentrator est définie sur true par défaut. maxTransportObjects Indique le nombre maximal d'objets de transfert qui peuvent être utilisés pour toutes les connexions avec l'objet DataSource associé. Les objets de transfert sont utilisés pour le concentrateur de connexions et l'équilibrage des charges de travail Sysplex. La valeur maxTransportObjects est ignorée si les propriétés enableConnectionConcentrator ou enableSysplexWLB ne sont pas paramétrées pour permettre l'utilisation du concentrateur de connexions ou l'équilibrage des charges de travail Sysplex. Le type de données de cette propriété est un nombre entier (ent.). Si la valeur maxTransportObjects n'a pas été atteinte et qu'un objet de transfert n'est pas disponible dans le groupe d'objets de transfert global, le groupe crée un nouvel objet de transfert. Si la valeur maxTransportObjects a été atteinte, l'application attend pendant la durée spécifiée dans la propriété de configuration db2.jcc.maxTransportObjectWaitTime. Une fois cette durée écoulée, si un objet de transfert n'est toujours pas disponible dans le groupe, le groupe émet une exception SQL. La propriété maxTransportObjects ne se substitue pas à la propriété de configuration db2.jcc.maxTransportObjects. La propriété maxTransportObjects n'a pas d'effet sur les connexions des autres objets DataSource. Si la valeur maxTransportObjects est supérieure à la valeur db2.jcc.maxTransportObjects, maxTransportObjects n'augmente pas la valeur db2.jcc.maxTransportObjects. La valeur par défaut de la propriété maxTransportObjects est définie sur -1, ce qui signifie que le nombre d'objets de transfert pour DataSource est limité uniquement par la valeur db2.jcc.maxTransportObjects pour le pilote. Exemple d'activation des fonctions d'équilibrage des charges de travail Sysplex et du concentrateur de connexions Pilote JDBC universel DB2 dans WebSphere Application Server La procédure qui suit est un exemple d'activation des fonctions d'équilibrage des charges de travail Sysplex et du concentrateur de connexions Pilote JDBC universel DB2 avec WebSphere Application Server. Conditions préalables Configuration minimale du serveur : * WLM pour z/OS * DB2 UDB pour OS/390 et z/OS, version 7 ou suivante Configuration minimale du client : * Pilote JDBC universel DB2 au niveau FixPak 10 * WebSphere Application Server, version 5.1 ou suivante Procédure Pour activer les fonctions d'équilibrage des charges de travail Sysplex et le concentrateur de connexions Pilote JDBC universel DB2 avec WebSphere Application Server, procédez comme suit : 1. Vérifiez que le niveau du Pilote JDBC universel DB2 permet de prendre en charge le concentrateur de connexions ainsi que l'équilibrage des charges de travail Sysplex en émettant la commande suivante dans l'interpréteur de commandes sur z/OS ou sur System Services sous UNIX : java com.ibm.db2.jcc.DB2Jcc -version Recherchez une ligne semblable à celle-ci dans les résultats : [ibm][db2][jcc] Driver: IBM DB2 JDBC Universal Driver Architecture n n n doit être une version 2.7 ou suivante. 2. Définissez les propriétés de configuration du Pilote JDBC universel DB2 afin d'activer le concentrateur de connexions ou l'équilibrage des charges de travail Sysplex pour toutes les instances DataSource qui sont créées sous ce pilote. Définissez les propriétés de configuration dans un fichier DB2JccConfiguration.properties. a. Créez un fichier DB2JccConfiguration.properties ou modifiez le fichier DB2JccConfiguration.properties existant. b. Définissez les propriétés de configuration suivantes : * db2.jcc.minTransportObjects * db2.jcc.maxTransportObjects * db2.jcc.maxTransportObjectWaitTime * db2.jcc.dumpPool * db2.jcc.dumpPoolStatisticsOnScheduleFile Commencez par des paramêtres similaires aux paramêtres suivants : db2.jcc.minTransportObjects=0 db2.jcc.maxTransportObjects=1500 db2.jcc.maxTransportObjectWaitTime=-1 db2.jcc.dumpPool=0 db2.jcc.dumpPoolStatisticsOnScheduleFile= /home/WAS/logs/srv1/poolstats c. Ajoutez le chemin d'accès au répertoire pour DB2JccConfiguration.properties au chemin d'accès de classe Pilote JDBC universel DB2 de WebSphere Application Server. 3. Définissez les propriétés de source de données Pilote JDBC universel DB2 afin d'activer les fonctions du concentrateur de connexions ou d'équilibrage des charges de travail Sysplex. Dans la console d'administration de WebSphere Application Server, définissez les propriétés suivantes pour les sources de données utilisées par votre application pour la connexion au serveur de base de données : * enableSysplexWLB * enableConnectionConcentrator * maxTransportObjects Supposons que vous souhaitiez utiliser les fonctions du concentrateur de connexions ainsi que les fonctions d'équilibrage des charges de travail Sysplex. Commencez par des paramêtres similaires aux paramêtres suivants : Tableau 26. Exemple de paramêtres de propriétés de source de données pour les fonctions d'équilibrage des charges de travail Sysplex et du concentrateur de connexions Pilote JDBC universel DB2 +-------------------------+-------------------------------------------+ | Propriété Définition | +-------------------------+-------------------------------------------+ | enableSysplexWLB true1 | +-------------------------+-------------------------------------------+ | maxTransportObjects 100 | +---------------------------------------------------------------------+ | Remarques: | | 1. La propriété enableConnectionConcentrator est définie sur true | | par défaut car la propriété enableSysplexWLB est définie sur true. | +---------------------------------------------------------------------+ 4. Redémarrez WebSphere Application Server. Méthodes de contrôle des fonctions d'équilibrage des charges de travail Sysplex et du concentrateur de connexions Pilote JDBC universel DB2 Pour contrôler ces fonctions, vous devez contrôler le groupe d'objets de transfert global. Vous pouvez contrôler le groupe d'objets de transfert global par l'une des deux méthodes suivantes : * A l'aide de programmes trace que vous démarrez en définissant les propriétés de configuration Pilote JDBC universel DB2 * A l'aide d'une interface de programmation d'application Propriétés de configuration pour le contrôle du groupe d'objets de transfert global Les propriétés de configuration db2.jcc.dumpPool, db2.jcc.dumpPoolStatisticsOnSchedule et db2.jcc.dumpPoolStatisticsOnScheduleFile permettent de contrôler le groupe des objets de transfert global à l'aide de la fonction de trace. Par exemple, l'ensemble suivant des paramêtres de propriétés de configuration engendre l'écriture de message d'erreur Sysplex et de message d'erreur de vidage de groupe toutes les 60 secondes vers un fichier appelé /home/WAS/logs/srv1/poolstats : db2.jcc.dumpPool=DUMP_SYSPLEX_MSG|DUMP_POOL_ERROR db2.jcc.dumpPoolStatisticsOnSchedule=60 db2.jcc.dumpPoolStatisticsOnScheduleFile=/home/WAS/logs/srv1/poolstats Le fichier de statistiques du groupe contient des entrées qui ressemblent aux entrées suivantes : time Scheduled PoolStatistics npr:2575 nsr:2575 lwroc:439 hwroc:1764 coc:372 aooc:362 rmoc:362 nbr:2872 tbt:857520 tpo:10 Les significations de ces zones sont les suivantes : npr Nombre total de requêtes émises par le Pilote JDBC universel DB2 au groupe depuis la création du groupe. nsr Nombre de requêtes réussies, émises par le Pilote JDBC universel DB2 au groupe depuis la création du groupe. Une requête réussie signifie que le groupe a renvoyé un objet. lwroc Nombre d'objets qui ont été réutilisés mais sans appartenir au groupe. Cette situation se produit si un objet de connexion libère un objet de transfert dans les limites de la transaction. Si l'objet de connexion nécessite un objet de transfert ultérieurement et que l'objet de transfert d'origine n'a pas été utilisé par un autre objet de connexion, l'objet de connexion peut utiliser cet objet de transfert. hwroc Nombre d'objets du groupe qui ont été réutilisés. coc Nombre d'objets créés par le Pilote JDBC universel DB2 depuis la création du groupe. aooc Nombre d'objets qui dépassent le délai d'inactivité indiqué dans la propriété de configuration db2.jcc.maxTransportObjectIdleTime puis qui ont été supprimés du groupe. rmoc Nombre d'objets qui ont été supprimés du groupe depuis sa création. nbr Nombre de requêtes émises par le Pilote JDBC universel DB2 au groupe qui ont été bloquées par le groupe parce que ce dernier a atteint sa capacité maximale. Une requête bloquée peut aboutir si un objet est renvoyé au groupe avant le dépassement de la valeur de configuration db2.jcc.maxTransportObjectWaitTime et l'émission d'une exception. tbt Temps total en millisecondes pour les requêtes qui ont été bloquées par le groupe. Ce temps peut être très supérieur au temps d'exécution écoulé de l'application si cette dernière utilise plusieurs unités d'exécution. tpo Nombre d'objets qui se trouvent actuellement dans le groupe. Interfaces de programmation d'application pour le contrôle du groupe d'objets de transfert global Vous pouvez écrire des applications afin de regrouper les statistiques du groupe d'objets de transfert global. Ces applications créent des objets dans la classe DB2PoolMonitor et appellent des méthodes d'extraction d'informations du groupe. Par exemple, le code suivant crée un objet pour le contrôle du groupe d'objets de transfert global : import com.ibm.db2.jcc.DB2PoolMonitor; DB2PoolMonitor transportObjectPoolMonitor = DB2PoolMonitor.getPoolMonitor (DB2PoolMonitor.TRANSPORT_OBJECT); après avoir créé l'objet DB2PoolMonitor, vous pouvez utiliser les méthodes suivantes pour contrôler le groupe d'objets de transfert global. getMonitorVersion Format : public int getMonitorVersion() Permet d'extraire la version de la classe DB2PoolMonitor livrée avec Pilote JDBC universel DB2. totalRequestsToPool Format : public int totalRequestsToPool() Permet d'extraire le nombre total de requêtes émises par le Pilote JDBC universel DB2 au groupe depuis la création de ce dernier. successfullRequestsFromPool Format : public int successfullRequestsFromPool() Permet d'extraire le nombre de requêtes réussies, émises par le Pilote JDBC universel DB2 au groupe depuis la création de ce dernier. Une requête réussie signifie que le groupe a renvoyé un objet. numberOfRequestsBlocked Format : public int numberOfRequestsBlocked() Permet d'extraire le nombre de requêtes émises par le Pilote JDBC universel DB2 au groupe qui ont été bloquées par le groupe parce que ce dernier a atteint sa capacité maximale. Une requête bloquée peut aboutir si un objet est renvoyé au groupe avant le dépassement de la valeur de configuration db2.jcc.maxTransportObjectWaitTime et l'émission d'une exception. totalTimeBlocked Format : public long totalTimeBlocked() Permet d'extraire le temps total en millisecondes pour les requêtes qui ont été bloquées par le groupe. Ce temps peut être très supérieur au temps d'exécution écoulé de l'application si cette dernière utilise plusieurs unités d'exécution. lightWeightReusedObjectCount Format : public int lightWeightReusedObjectCount() Permet d'extraire le nombre d'objets qui ont été réutilisés mais sans appartenir au groupe. Cette situation se produit si un objet de connexion libère un objet de transfert dans les limites de la transaction. Si l'objet de connexion nécessite un objet de transfert ultérieurement et que l'objet de transfert d'origine n'a pas été utilisé par un autre objet de connexion, l'objet de connexion peut utiliser cet objet de transfert. heavyWeightReusedObjectCount Format : public int heavyWeightReusedObjectCount() Permet d'extraire le nombre d'objets du groupe qui ont été réutilisés. createdObjectCount Format : public int createdObjectCount() Permet d'extraire le nombre d'objets créés par le Pilote JDBC universel DB2 depuis la création du groupe. agedOutObjectCount Format : public int agedOutObjectCount() Permet d'extraire le nombre d'objets qui dépassent le délai d'inactivité indiqué dans la propriété de configuration db2.jcc.maxTransportObjectIdleTime, puis qui ont été supprimés du groupe. removedObjectCount Format : public int removedObjectCount() Permet d'extraire le nombre d'objets qui ont été supprimés du groupe depuis sa création. totalPoolObjects Format : public int totalPoolObjects() Nombre d'objets qui se trouvent actuellement dans le groupe. Mot clé de configuration CLI/ODBC OleDbReportIsLongForLongTypes Le mot clé OleDbReportIsLongForLongTypes est pris en charge par les serveurs de base de données suivants : * DB2 UDB pour z/OS version 6 avec PTF UQ93891 * DB2 UDB pour z/OS version 7 avec PTF UQ93889 * DB2 UDB pour z/OS version 8 avec PTF UQ93890 * DB2 UDB pour Linux, UNIX et Windows version 8.2 (équivalente de la version 8.1, FixPak 7) et suivante Description du mot clé : La BD OLE insère le marqueur DBCOLUMNFLAGS_ISLONG dans les données de type LONG. Syntaxe du mot clé db2cli.ini : OleDbReportIsLongForLongTypes = 0 | 1 Attribut d'instruction équivalent : SQL_ATTR_REPORT_ISLONG_FOR_LONGTYPES_OLEDB Paramêtre par défaut : Les types LONG (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC et LONG VARGRAPHIC FOR BIT DATA) ne comportent pas le marqueur DBCOLUMNFLAGS_ISLONG, ce qui peut entraîner l'utilisation des colonnes dans la clause WHERE. Remarques sur la syntaxe : Le moteur de curseur du client de OLE BD et le générateur de commandes (CommandBuilder) de OLE DB .NET Data Provider génère une mise à jour et supprime des instructions en fonction des informations de colonnes fournies par IBM DB2 OLE DB Provider. Si la clause WHERE de l'instruction générée contient un type LONG, elle échouera car le type LONG ne peut pas être utilisé dans une recherche avec un opérateur d'égalité. Si l'on attribue la valeur 1 au mot clé OleDbReportIsLongForLongTypes, IBM DB2 OLE DB Provider signale les types LONG (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC et LONG VARGRAPHIC FOR BIT DATA) dotés du marqueur DBCOLUMNFLAGS_ISLONG. Ceci évite l'utilisation de colonnes longues dans la clause WHERE. Mot clé de configuration CLI/ODBC OleDbSQLColumnsSortByOrdinal Le mot clé OleDbSQLColumnsSortByOrdinal est pris en charge par les serveurs de base de données suivants : * DB2 UDB pour z/OS version 6 avec PTF UQ93891 * DB2 UDB pour z/OS version 7 avec PTF UQ93889 * DB2 UDB pour z/OS version 8 avec PTF UQ93890 * DB2 UDB pour Linux, UNIX et Windows version 8.2 (équivalente de la version 8.1, FixPak 7) et suivante Description du mot clé : Permet à IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) d'OLE DB de renvoyer un ensemble de lignes triées par colonne ORDINAL_POSITION. Syntaxe du mot clé db2cli.ini : OleDbSQLColumnsSortByOrdinal = 0 | 1 Attribut d'instruction équivalent : SQL_ATTR_SQLCOLUMNS_SORT_BY_ORDINAL_OLEDB Paramêtre par défaut : IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) renvoie un ensemble de lignes triées par colonnes TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME. Remarques sur la syntaxe : La spécification Microsoft OLE DB requiert que IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) renvoie l'ensemble de lignes trié en fonction des colonnes TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME et COLUMN_NAME. IBM DB2 OLE DB Provider respecte cette spécification. En revanche, les applications qui utilisent Microsoft ODBC Bridge Provider (MSDASQL) sont généralement codées pour le tri de l'ensemble de lignes par ORDINAL_POSITION (position ordinale). Si vous attribuez la valeur 1 au mot clé OleDbSQLColumnsSortByOrdinal, le fournisseur renverra un ensemble de lignes triées par ORDINAL_POSITION. Groupe de propriétés DB2 Data Source d'IBM DB2 OLE DB Provider IBM DB2 OLE DB Provider a ajouté un nouveau groupe de propriétés : DB2 Data Source. DBPROPSET_DB2DATASOURCE est le jeu de propriétés de DB2 Data Source. Le GUID de ce jeu de propriétés est {0x8a80412a,0x7d94,0x4fec,{0x87,0x3e,0x6c,0xd1,0xcd,0x42,0x0d,0xcd}} DBPROPSET_DB2DATASOURCE comprend trois propriétés : * DB2PROP_REPORTISLONGFORLONGTYPES * DB2PROP_RETURNCHARASWCHAR * DB2PROP_SORTBYORDINAL DB2PROP_REPORTISLONGFORLONGTYPES #define DB2PROP_REPORTISLONGFORLONGTYPES 4 Property group: DB2 Data Source Property set: DB2PROPSET_DATASOURCE Type: VT_BOOL Typical R/W: R/W Description: Report IsLong for Long Types Le moteur de curseur du client de OLE BD et le générateur de commandes (CommandBuilder) de OLE DB .NET Data Provider génère une mise à jour et supprime des instructions en fonction des informations de colonnes fournies par IBM DB2 OLE DB Provider. Si la clause WHERE de l'instruction générée contient un type LONG, elle échouera car le type LONG ne peut pas être utilisé dans une recherche avec un opérateur d'égalité. Tableau 27. Valeurs de DB2PROP_REPORTISLONGFORLONGTYPES +----------------+----------------------------------------------------+ | Valeurs | Signification | +----------------+----------------------------------------------------+ | VARIANT_TRUE | Permet à IBM DB2 OLE DB Provider de signaler des | | | types LONG (LONG VARCHAR, LONG VARCHAR FOR BIT | | | DATA, LONG VARGRAPHIC et LONG VARGRAPHIC FOR BIT | | | DATA) dotés du marqueur DBCOLUMNFLAGS_ISLONG. Ceci | | | évite l'utilisation de colonnes longues dans la | | | clause WHERE. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | DBCOLUMNFLAGS_ISLONG n'est pas défini pour LONG | | | VARCHAR, LONG VARCHAR FOR BIT DATA, LONG | | | VARGRAPHIC et LONG VARGRAPHIC FOR BIT DATA. Il | | | s'agit de la valeur par défaut. | +----------------+----------------------------------------------------+ DB2PROP_RETURNCHARASWCHAR #define DB2PROP_RETURNCHARASWCHAR 2 Property group: DB2 Data Source Property set: DB2PROPSET_DATASOURCE Type: VT_BOOL Typical R/W: R/W Description: Return Char as WChar Tableau 28. Valeurs de DB2PROP_RETURNCHARASWCHAR +----------------+----------------------------------------------------+ | Valeurs | Signification | +----------------+----------------------------------------------------+ | VARIANT_TRUE | OLE DB décrit les colonnes de type CHAR, VARCHAR, | | | LONG VARCHAR, ou CLOB comme étant DBTYPE_WSTR. La | | | page de codes des données concernée dans | | | ISequentialStream est UCS-2. Il s'agit de la | | | valeur par défaut. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | OLE DB décrit les colonnes de type CHAR, VARCHAR, | | | LONG VARCHAR, ou CLOB comme étant DBTYPE_STR. La | | | page de codes des données concernée dans | | | ISequentialStream est la page de codes locale du | | | client. | +----------------+----------------------------------------------------+ DB2PROP_SORTBYORDINAL #define DB2PROP_SORTBYORDINAL 3 Property group: DB2 Data Source Property set: DB2PROPSET_DATASOURCE Type: VT_BOOL Typical R/W: R/W Description: Sort By Ordinal La spécification Microsoft OLE DB requiert que IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) renvoie l'ensemble de lignes trié en fonction des colonnes TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME et COLUMN_NAME. IBM DB2 OLE DB Provider respecte cette spécification. En revanche, les applications qui utilisent Microsoft ODBC Bridge Provider (MSDASQL) sont généralement codées pour le tri de l'ensemble de lignes par ORDINAL_POSITION (position ordinale). Tableau 29. Valeurs de DB2PROP_SORTBYORDINAL +----------------+----------------------------------------------------+ | Valeurs | Signification | +----------------+----------------------------------------------------+ | VARIANT_TRUE | Le fournisseur renverra un ensemble de lignes | | | triées par position ordinale (ORDINAL_POSITION). | +----------------+----------------------------------------------------+ | VARIANT_FALSE | Le fournisseur renverra un ensemble de lignes | | | triées par TABLE_CATALOG, TABLE_SCHEMA, | | | TABLE_NAME, COLUMN_NAME. Il s'agit de la valeur | | | par défaut. | +----------------+----------------------------------------------------+ Syntaxe d'URL incorrecte dans le diagramme de syntaxe DB2Binder Dans la rubrique "Installing the DB2 Universal JDBC Driver", le diagramme de syntaxe DB2Binder définit de façon erronée la syntaxe de l'URL pour le pilote JDBC de DB2 Universal. La représentation correcte de la syntaxe de l'URL de DB2Binder figure dans le schéma suivant : Syntaxe de DB2Binder +----------------------------------------------------------------------+ | >>-java--com.ibm.db2.jcc.DB2Binder------------------------------> | | | | >---url jdbc:db2://serveur-+---------+-/base de données---------> | | '-:--port-' | | | | >---user ID-utilisateur---password mot-de-passe-----------------> | | | | >--+--------------+--+-------------------------------+----------> | | '--size entier-' '--collection nom de collection-' | | | | >--+----------------------------------+--+-------+------------->< | | | .-,---------------. | '--help-' | | | V | | | | '--tracelevel ---option de trace-+-' | +----------------------------------------------------------------------+ Redirection des clients du pilote JDBC DB2 Universal Sous DB2 Universal Database (UDB) pour Linux, UNIX, et Windows, la fonction de redirection automatique du client permet aux applications client de récupérer après une perte de communication avec le serveur et de continuer à fonctionner après une interruption minimale. A chaque verrouillage de serveur, chaque client connecté à ce serveur reçoit une erreur de transmission qui met fin à la connexion et engendre une erreur d'application. Si la disponibilité est importante, vous devez disposer d'une configuration redondante ou d'une prise en charge de la fonction de secours. La fonction de secours est la possibilité dont dispose un serveur de reprendre les opérations lorsqu'un autre serveur échoue. Dans tous les cas, le client du pilote JDBC de DB2 Universal tente de rétablir la connexion à un nouveau serveur ou au serveur original, qui est susceptible de fonctionner sur un noeud de secours. Lorsque la connexion est rétablie, l'application reçoit une exception SQLException qui l'informe de l'échec de la transaction mais ne l'empêche pas de passer à la transaction suivante. Restrictions * Le support de redirection du client de pilote JDBC DB2 Universal est uniquement disponible pour les connexions qui utilisent l'interface javax.sql.DataSource. * Une application client ne peut récupérer une perte de communication que si l'emplacement d'un serveur de remplacement est spécifié au niveau du serveur. L'administrateur de base de données spécifie le serveur de remplacement avec la commande UPDATE ALTERNATE SERVER FOR DATABASE. Procédure Une fois l'emplacement du serveur de remplacement spécifié sur une base de données particulière au niveau de l'instance du serveur, l'emplacement du serveur principal et du serveur de remplacement sont renvoyés au client au moment de la connexion. Le pilote JDBC de DB2 Universal crée une instance d'objet DB2ClientRerouteServerList pouvant être référencée et stocke cette instance dans sa mémoire transitoire. Si la communication est perdue, le pilote JDBC de DB2 Universal JDBC tente de rétablir la connexion grâce aux informations du serveur que le serveur a renvoyé. La propriété clientRerouteServerListJNDIName DataSource offre un support supplémentaire de redirection du client au niveau de ce dernier. Cette propriété remplit deux fonctions : * Elle permet de conserver les informations du serveur de remplacement sur les JVM * Elle propose un emplacement de serveur de remplacement si la première connexion au serveur de base de données n'a pas abouti La propriété clientRerouteServerListJNDIName permet d'identifier une référence JNDI à une instance DB2ClientRerouteServerList dans un référentiel JNDI d'informations de serveur de remplacement. Une fois la connexion au serveur principal établie, les informations de serveur de remplacement fournies par clientRerouteServerListJNDIName sont remplacées par celles provenant du serveur. Le pilote JDBC DB2 Universal tente de propager les informations mises à jour vers le magasin JNDI après une reprise en ligne si la propriété clientRerouteServerListJNDIName est définie. Si tel est le cas, les informations du serveur principal spécifiées dans DB2ClientRerouteServerList seront utilisées pour la connexion. Si le serveur principal n'est pas spécifié, les informations serverName spécifiées sur la source de données seront utilisées. DB2ClientRerouteServerList est un bean Java sérialisable doté de quatre propriétés : * alternateServerName * alternatePortNumber * primaryServerName * primaryPortNumber Les méthodes getter et setter (consultation et modification) permettant l'accès à ces propriétés sons fournies. Voici la définition de la classe DB2ClientRerouteServerList : package com.ibm.db2.jcc; public class DB2ClientRerouteServerList implements java.io.Serializable, javax.naming.Referenceable { public String[] alternateServerName; public synchronized void setAlternateServerName(String[] alternateServer); public String[] getAlternateServerName(); public int[] alternatePortNumber; public synchronized void setAlternatePortNumber(int[] alternatePortNumberList); public int[] getAlternatePortNumber(); public synchronized void setPrimaryServerName (String primaryServerName); public String getPrimaryServerName (); public synchronized void setPrimaryPortNumber (int primaryPortNumber) public int getPrimaryPortNumber (); } Une connexion de secours nouvellement établie est configurée avec les propriétés de source de données initiales, à l'exception du nom de serveur et du numéro de port. En outre, tout registre spécial DB2 UDB modifié lors de la connexion d'origine est rétabli dans la connexion de secours par le pilote JDBC de DB2 Universal. Lorsqu'un arrêt anormal de la communication se produit, le pilote JDBC de DB2 Universal tente d'abord une reprise vers le serveur principal. Si la reprise échoue, le pilote tente de se connecter à l'emplacement de remplacement (fonction de secours). Une fois la connexion rétablie, le pilote émet une exception java.sql.SQLException vers l'application avec SQLCODE -4498, qui indique à l'application le rétablissement automatique de la connexion vers le serveur de remplacement. L'application peut alors relancer sa transaction. Procédure rendant DB2ClientRerouteServerList persistant Procédez comme suit pour configurer la mémoire de façon à rendre DB2ClientRerouteServerList persistant : 1. Créez une instance de DB2ClientRerouteServerList, puis liez-la au registre JNDI. Par exemple : // Create a starting context for naming operations InitialContext registry = new InitialContext(); // Create a DB2ClientRerouteServerList object DB2ClientRerouteServerList address=new DB2ClientRerouteServerList(); // Set the port number and server name for the primary server address.setPrimaryPortNumber(50000); address.setPrimaryServerName("mvs1.sj.ibm.com"); // Set the port number and server name for the alternate server int[] port = {50002}; String[] server = {"mvs3.sj.ibm.com"}; address.setAlternatePortNumber(port); address.setAlternateServerName(server); registry.rebind("serverList", address); 2. Attribuez le nom JNDI de l'objet DB2ClientRerouteServerList à la propriété clientRerouteServerListJNDIName de la source de données (DataSource). Par exemple : datasource.setClientRerouteServerListJNDIName("serverList"); Personnalisation des propriétés de configuration du pilote JDBC de DB2 Universal Les propriétés de configuration du pilote JDBC de DB2 Universal vous permettent de définir les valeurs de propriété dont la portée s'étend au niveau du pilote. Ces paramêtres s'appliquent aux instances des applications et DataSource. Vous pouvez les modifier sans modifier le code source de l'application ni les caractéristiques de DataSource. Chaque paramêtre de propriété de configuration du pilote JDBC de DB2 Universal se présente sous la forme suivante : propriété=value Si la propriété de configuration commence par db2.jcc.override, elle s'applique à toutes les connexions et remplace toute propriété Connection ou DataSource portant le même nom de propriété. Si la propriété de configuration commence par db2.jcc or db2.jcc.default, il s'agit d'une propriété de configuration par défaut. Les paramêtres de propriété Connection ou DataSource remplacent cette valeur. Procédure Pour définir les propriétés de configuration, procédez comme suit : * Définissez les propriétés de configuration en tant que propriétés système Java. Ces paramêtres remplacent tous les autres paramêtres. Pour les applications Java autonomes, vous pouvez définir les propriétés de configuration en tant que propriétés système Java en indiquant -Dproperty=value pour chaque propriété de configuration lorsque vous exécutez la commande java. * Définissez les propriétés de configuration dans une ressource portant le nom que vous avez spécifié dans la propriété système Java db2.jcc.propertiesFile. Par exemple, vous pouvez spécifier un chemin d'accès absolu pour la valeur db2.jcc.propertiesFile. Pour les applications Java autonomes, vous pouvez définir les propriétés de configuration en indiquant l'option -Ddb2.jcc.propertiesFile=path lorsque vous exécutez la commande java. * Définissez les propriétés de configuration dans une ressource nommée DB2JccConfiguration.properties. Une recherche de ressource Java standard est lancée pour trouver DB2JccConfiguration.properties. Le pilote JDBC de DB2 Universal recherche cette ressource uniquement si vous n'avez pas défini la propriété système Java db2.jcc.propertiesFile. DB2JccConfiguration.properties peut être un fichier autonome ou peut être inclus dans un fichier JAR. Si DB2JccConfiguration.properties est un fichier autonome, son chemin d'accès doit être une concaténation CLASSPATH. Si DB2JccConfiguration.properties est un fichier JAR, ce fichier doit se trouver dans la concaténation CLASSPATH. Vous pouvez définir les propriétés de configuration du pilote JDBC de DB2 Universal ci-dessous. Toutes les propriétés sont facultatives. db2.jcc.override.traceFile Permet au pilote JDBC de DB2 Universal d'assurer le traçage du code pilote Java et de préciser le nom sur lequel sont basés les noms de fichiers de trace. Indiquez un nom qualifié complet du fichier pour la valeur de la propriété db2.jcc.override.traceFile. La propriété db2.jcc.override.traceFile remplace la propriété traceFile pour l'objet Connection ou DataSource. Par exemple, en paramétrant db2.jcc.override.traceFile comme suit, vous activez le traçage du code Java du pilote JDBC de DB2 Universal dans un fichier nommé /SYSTEM/tmp/jdbctrace : db2.jcc.override.traceFile=/SYSTEM/tmp/jdbctrace Il est recommandé de définir les propriétés de trace en collaboration avec le service de support IBM Software Support. db2.jcc.sqljUncustomizedWarningOrException Permet de préciser l'action réalisée par le pilote JDBC de DB2 Universal lorsqu'une application SQLJ non personnalisée s'exécute. Les valeurs suivantes peuvent être attribuées à db2.jcc.sqljUncustomizedWarningOrException : 0 Le pilote JDBC de DB2 Universal ne génère pas d'avertissement ni d'exception lorsqu'une application SQLJ non personnalisée s'exécute. Il s'agit de la valeur par défaut. 1 Le pilote JDBC de DB2 Universal génère un avertissement lorsqu'une application SQLJ non personnalisée s'exécute. 2 Le pilote JDBC de DB2 Universal génère une exception lorsqu'une application SQLJ non personnalisée s'exécute. Fonction db2secFreeToken supprimée La fonction db2secFreeToken (mémoire libre gérée par le jeton) ne fait plus partie de l'API du plug-in d'authentification utilisateur db2secGssapiServerAuthFunctions_1. Déployer les plug-ins de sécurité personnalisés avec précaution L'intégrité de votre installation DB2 Universal Database (UDB) peut être compromise si le déploiement des plug-ins de sécurité n'est pas correctement codé, révisé et testé. DB2 UDB est protégé contre de nombreux types d'incidents courants, mais son intégrité n'est pas totalement garantie en cas de déploiement de plug-in de sécurité écrits par l'utilisateur. Plug-ins de sécurité Si vous utilisez votre plug-in de sécurité personnel, vous pouvez utiliser un ID utilisateur composé de 255 caractères au maximum sur une instruction de connexion émise par l'intermédiaire de l'interpréteur de commandes ou d'une instruction SQL dynamique. API du plug-in de sécurité Pour les API db2secGetGroupsForUser, db2secValidatePassword et db2secGetAuthIDs, le paramêtre d'entrée dbname peut être nul et la valeur 0 attribuée à son paramêtre d'entrée de longueur correspondant dbnamelen. Conventions de dénomination du plug-in de sécurité(Linux et UNIX) .so est désormais accepté comme suffixe de nom de fichier des bibliothèques de plug-ins de sécurité écrits par l'utilisateur sur toutes les plateformes Linux et UNIX. Sous AIX, le suffixe .a ou .so peut être attribué aux bibliothèques de plug-ins de sécurité. Si les deux versions de bibliothèque de plug-ins existent, la version .a est utilisée. Pour HP-UX on PA-RISC, le suffixe .sl ou .so peut être attribué aux bibliothèques de plug-ins de sécurité. Si les deux versions de bibliothèque de plug-ins existent, la version .sl est utilisée. Sur toutes les autres plateformes Linux et UNIX, .so est le seul suffixe de nom de fichier pris en charge pour les bibliothèques de plug-ins de sécurité. Restrictions sur les bibliothèques de plug-ins de sécurité Sous AIX, le suffixe de nom de fichier .a ou .so peut être attribué aux bibliothèques de plug-ins de sécurité. Le mécanisme utilisé pour charger la bibliothèque de plug-ins dépend du suffixe utilisé : bibliothèques de plug-ins portant le suffixe de nom de fichier .a Les bibliothèques de plug-ins portant les suffixes de nom de fichier .a sont supposées être des archives contenant des membres objet partagés. Ces membres doivent être appelés shr.o (32-bits) ou shr64.o (64-bits). Une seule archive peut contenir les membres à 32-bits et à 64-bits, lui permettant d'être déployée sur les deux types de plateforme. Par exemple, pour construire une bibliothèque de plug-ins de style d'archive, procédez comme suit : xlc_r -qmkshrobj -o shr.o MyPlugin.c -bE:MyPlugin.exp ar rv MyPlugin.a shr.o bibliothèques de plug-ins portant le suffixe de nom de fichier .so Les bibliothèques de plug-ins portant le suffixe de nom de fichier .so sont supposées être des objets partagés téléchargeables de manière dynamique. Ces objets sont soit à 32-bits soit à 64-bits, selon les options du compilateur et de l'éditeur de liens utilisées lors de leur construction. Par exemple, pour construire une bibliothèque de plug-ins à 32-bits : xlc_r -qmkshrobj -o MyPlugin.so MyPlugin.c -bE:MyPlugin.exp Sur toutes les plateformes autres qu'AIX, les bibliothèques de plug-ins de sécurité sont toujours supposées être des objets partagés téléchargeables de manière dynamique. Prise en charge du module d'extension GSS-API du pilote JDBC DB2 Universal Avec l'édition de la version 8.2 de DB2 UDB pour Linux, UNIX, Windows, vous pouvez créer vos propres méthodes d'authentification sous forme de modules d'extension (bibliothèques à charger). Le moteur DB2 UDB accède aux modules d'extension préalablement chargés pour effectuer une authentification d'utilisateur. Afin de prendre en charge les applications client écrites en Java, le pilote JDBC DB2 Universal fournit un support de module d'extension de sécurité dans la version 8.2 de DB2 UDB, FixPak 4. Pour les applications Java qui se servent du pilote JDBC DB2 Universal pour authentifier le module d'extension, les utilisateurs doivent implémenter leur propre module d'extension en étendant la classe abstraite com.ibm.db2.jcc.DB2JCCPlugin et en définissant les propriétés suivantes : * ID utilisateur et mot de passe : données d'identification de l'utilisateur à utiliser pour l'authentification * Nom du module d'extension : nom du module d'extension, côté serveur * Méthode de sécurité : ce paramêtre doit être défini sur la sécurité du module d'extension * Module d'extension : module d'extension, côté application client Voici quelques exemples : java.util.Properties properties = new java.util.Properties(); properties.put("user", "db2admin"); properties.put("password", "admindb2"); properties.put("pluginName", "gssapi_simple"); properties.put("securityMechanism", new String(""+com.ibm.db2.jcc.DB2BaseDataSource.PLUGIN_SECURITY+"")); properties.put("plugin", new JCCSimpleGSSPlugin()); Connection con = java.sql.DriverManager.getConnection(url, properties); Les plug-ins de sécurité GSS-API ne prennent pas en charge l'authentification à transmissions multiples L'authentification GSS-API ne transmet qu'un seul jeton du client au serveur et un jeton du serveur au client. Ces jetons s'obtiennent sur le client, à partir de gss_init_sec_context(), et sur le serveur, à partir de gss_accept_sec_context(). Les plug-ins GSS-API qui tentent d'autres transmissions génèrent une erreur imprévue, entraînant l'échec de la connexion. Les plug-ins de sécurité GSS-API ne prennent pas en charge le chiffrement et la signature des messages Le chiffrement et la signature des messages ne sont pas disponibles dans les plug-ins de sécurité GSS-API. arrêt implicite des opérations dans des applications autonomes Toutes les résiliations d'application (normales et anormales) mettent fin de manière implicite aux unités de travail en attente, quel que soit le système d'exploitation. Prise en charge des transactions réparties Dans la documentation Nouveautés de DB2 Universal Database (UDB) version 8.2, des erreurs figurent dans la partie traitant de la prise en charge des transactions réparties de la section relative aux améliorations du pilote JDBC de DB2 Universal. La dernière phrase de cette section est incorrecte. La voici après correction : A partir de la version 8.2, DB2 UDB prend en charge le traitement des transactions réparties conformes à la spécification XA. Cette prise en charge met en oeuvre les spécifications Java 2 Platform Enterprise Edition (J2EE) Java Transaction Service (JTS) et Java Transaction API (JTA). Développement d'application : Programmation des applications serveur Procédures d'exécution de langage commun (CLR) à ensembles de résultats multiples Le nombre maximal d'ensembles de résultats pouvant être renvoyé par une procédure d'exécution de langage commun (CLR) est limité. La limite est déterminée par le nombre maximal d'objets DB2DataReader que le fournisseur de données DB2 .NET peut prendre en charge simultanément après ouverture dans une connexion. La prise en charge d'un programme de lecture de données actives concurrentes permet l'ouverture de plusieurs objets DB2DataReader dans une connexion. C'est pourquoi, une procédure CLR peut renvoyer plusieurs ensembles de résultats. Modes de contrôle d'exécution de routine CLR (clause EXECUTION CONTROL) En tant qu'administrateur de base de données ou développeur d'applications, vous pouvez protéger les assemblages associés à vos routines externes DB2 Universal Database contre une contrefaçon en limitant les actions des routines au moment de l'exécution. Les routines CLR DB2 .NET prennent en charge la spécification d'un mode de contrôle d'exécution permettant d'identifier les types d'action qu'une routine peut réaliser lors de l'exécution. Lors de l'exécution, DB2 UDB peut détecter si la routine tente de réaliser des actions qui sortent du cadre du mode de contrôle d'exécution spécifié, ce qui peut être utile pour déterminer si un assemblage a été compromis. Pour définir le mode de contrôle d'exécution d'une routine CLR, indiquez la clause EXECUTION CONTROL facultative dans l'instruction CREATE pour la routine. Les modes valides sont les suivants : * SAFE * FILEREAD * FILEWRITE * NETWORK * UNSAFE Pour modifier le mode de contrôle d'exécution d'une routine CLR existante, exécutez l'instruction ALTER PROCEDURE ou ALTER FUNCTION. Si la clause EXECUTION CONTROL n'est pas spécifiée pour une routine CLR, cette routine CLR s'exécute par défaut en utilisant le mode de contrôle d'exécution le plus restrictif SAFE. Les routines créées avec ce mode de contrôle d'exécution peuvent uniquement accéder aux ressources contrôlées par le gestionnaire de base de données. Les modes de contrôle d'exécution les moins restrictifs permettent à une routine d'accéder aux fichiers sur le système de fichiers (FILEREAD ou FILEWRITE) ou sur le réseau. Le mode de contrôle d'exécution UNSAFE permet de préciser que le comportement de la routine ne doit en aucun cas être restreint. Les routines définies avec le mode de contrôle d'exécution UNSAFE peuvent exécuter du code binaire. Ces modes de contrôle représente une hiérarchie d'actions admissibles, et un mode de niveau supérieur inclut les actions admises aux niveaux qui lui sont inférieurs dans la hiérarchie. Par exemple, le mode de contrôle d'exécution NETWORK permet à une routine d'accéder aux fichiers sur le réseau, aux fichiers sur le système de fichiers local et aux ressources contrôlées par le gestionnaire de base de données. Utilisez le mode de contrôle d'exécution le plus restrictif possible et éviter d'utiliser le mode UNSAFE. Si, lors de l'exécution, DB2 UDB détecte qu'une routine CLR tente une action qui sort du cadre de son mode de contrôle d'exécution, DB2 UDB renvoie une erreur (SQLSTATE 38501). La clause EXECUTION CONTROL peut uniquement être spécifiée pour les routines CLR LANGUAGE. La portée d'applicabilité de la clause EXECUTION CONTROL est limitée à la routine .NET CLR elle-même et ne s'étend pas à d'autres routines qu'elle est susceptible d'appeler. Précision décimale maximale et échelle des routines CLR Le type de données DECIMAL de DB2 Universal Database (UDB) est représenté avec une précision de 31 chiffres et une échelle de 28 chiffres. Le type de données .NET CLR System.Decimal est limité à une précision de 29 chiffres et à une échelle de 28 chiffres. Par conséquent, les routines CLR externes de DB2 UDB ne doivent pas attribuer une valeur supérieure à (2^96)-1, valeur maximum pouvant être représentée avec une précision à 29 chiffres et une échelle à 28 chiffres, à une variable de type de données System.Decimal. Si cette instruction n'est pas respectée, DB2 UDB émet une erreur d'exécution (SQLSTATE 22003, SQLCODE -413). Lors de l'exécution de l'instruction CREATE d'une routine, si une échelle supérieure à 28 a été attribuée au paramêtre de type de données DECIMAL, DB2 UDB émet une erreur (SQLSTATE 42611, SQLCODE -604). Référence sur les commandes Exemples d'utilisation db2demigdbd Les exemples de l'utilisation de db2demigdbd suivants sont classés par système d'exploitation. Pour migrer des fichiers répertoire système des bases de données sur UNIX et Linux : db2demigdbd $HOME/sqllib 1 Pour migrer des fichiers répertoire système local des bases de données sur UNIX et Linux : db2demigdbd ~/user/NODE0000 1 Pour migrer le système et tous les fichiers répertoire des bases de données locales dans l'instance sur UNIX et Linux : db2demigdbd $HOME/sqllib 2 Pour migrer les fichiers répertoire système des bases de données sur Windows : db2demigdbd d:\sqllib\db2 1 oà DB2 est l'instance en cours. Pour migrer des fichiers répertoire système local des bases de données sur Windows : db2demigdbd d:\db2\NODE0000 1 Pour migrer le système et tous les fichiers répertoire des bases de données locales dans l'instance sur Windows : db2demigdbd d:\sqllib\db2 2 Remarques sur l'utilisation : Une fois la commande db2updv8 exécutée pour mettre à jour les catalogues système au niveau de la version 8 actuelle, vous ne pouvez pas revenir à la version 8.1. Correction des remarques d'utilisation de la commande db2ckbkp L'option '-p' affiche le nombre de pages de chaque type d'objet. Toutefois, le résultat de la commande db2ckbkp avec l'option '-p' n'affiche pas le nombre de pages de tous les différents types d'objet si la sauvegarde a été réalisée pour les données d'espaces table DMS. Dans ce cas, il affiche uniquement le total de toutes les pages sous SQLUDMSTABLESPACEDATA. La valeur zéro s'affiche pour SQLUDMSLOBDATA et SQLUDMSLONGDATA pour les espaces table DMS. Voici un exemple de section de résultat de la commande db2ckbkp -p avec une sauvegarde réalisée pour les données d'espaces table DMS : SQLUDMSTABLESPACEDATA (0c): 87 SQLUDMSLOBDATA (0e): 0 SQLUDMSLONGDATA (0f): 0 Conventions de dénomination pour des objets de base de données et des ID Les conventions suivantes s'appliquent pour la dénomination d'objets gestionnaire de bases de données, tels que des bases de données et des tables. * Les chaînes de caractères qui représentent des noms d'objet gestionnaire de bases de données peuvent contenir les caractères suivants : a-z, A-Z, 0-9, @, # et $. * Sauf indication contraire, vous pouvez saisir les noms en lettres minuscules ; toutefois, le gestionnaire de bases de données les traite comme des majuscules. Cette convention comporte une exception : les chaînes de caractères qui représentent les noms sous l'architecture SNA (Systems Network Architecture). De nombreuses valeurs sont sensibles à la casse, telles les noms d'unité logique (LU partenaire_ et LU locale_). Le nom doit être saisi exactement tel qu'il apparaît dans les définitions de l'architecture SNA qui correspondent à ces dispositions. * Un nom de base de données ou un pseudonyme est une chaîne de caractères unique contenant entre une et huit lettres, chiffres ou caractères de clavier d'après l'ensemble décrit dans les informations précédentes. Les bases de données sont cataloguées dans le système ainsi que dans les répertoires des bases de données locales par leur pseudonyme et par leur nom d'origine, dans deux zones différentes. Pour obtenir davantage de fonctions, gestionnaire de bases de données utilise le nom saisi dans la zone pseudonyme des répertoires des bases de données. Les exceptions sont CHANGE DATABASE COMMENT et CREATE DATABASE, oà un chemin de répertoire doit être indiqué. * Le nom ou le pseudonyme d'une table ou d'une vue est un identificateur SQL qui représente une chaîne unique comprenant entre 1 et 128 caractères. Les noms de colonne peuvent comporter entre 1 et 30 caractères. Un nom de table entièrement habilité se compose des éléments suivants schema.tablename. Le schéma est l'ID utilisateur unique sous lequel a été créée la table. Le nom du schéma d'une table temporaire déclarée doit être SESSION. * Les pseudonymes locaux des noeuds éloignés qui ne sont pas catalogués dans le répertoire des noeuds ne peuvent dépasser 8 caractères. * Le premier caractère de la chaîne doit être un caractère alphabétique, @, # ou $ et non un numéro ou les séquences de lettres SYS, DBM ou IBM. Les conventions suivantes s'appliquent pour la dénomination des ID utilisateur et ID d'authentification. * Les chaînes de caractères qui représentent des noms d'objet gestionnaire de bases de données peuvent contenir les caractères suivants : a-z, A-Z, 0-9, @, # et $. * Les ID et les groupes d'utilisateurs peuvent également contenir les autres caractères suivants lorsqu'ils sont pris en charge par le module de sécurité : _, !, %, (, ), {, }, -, ., ^. * Les ID et groupes d'utilisateurs contenant l'un des caractères suivants doivent être délimités par des guillemets lorsqu'ils sont intégrés dans l'interpréteur de commandes : !, %, (, ), {, }, -, ., ^, * Le premier caractère de la chaîne doit être un caractère alphabétique, @, # ou $ et non un numéro ou les séquences de lettres SYS, DBM ou IBM. * Les ID d'authentification ne peuvent excéder 30 caractères sous systèmes Windows 32 bits et 8 caractères sur tous les autres systèmes d'exploitation. * Les ID groupe ne peuvent dépasser 30 caractères. Commande REORGCHK Les formules statistiques de l'index utilisées dans la commande REORGCHK ont été modifiées. Les nouvelles formules et leurs explications sont les suivantes : * Formule F5 : 100 * (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE ) / ((NLEAF - NUM EMPTY LEAFS - 1) * (INDEXPAGESIZE - 96) > MIN(50, (100 - PCTFREE)) où LEAF_REC_OVERHEAD = 9 et DUPKEYSIZE = 5. Nous vous conseillons une réorganisation si vous disposez de plus de 50 pour cent d'espace libre dans l'index, ou plus de PCTFREE% d'espace libre dans l'index si PCTFREE est supérieur à 50. Cette formule est vérifiée uniquement si la valeur de NLEAF - NUM EMPTY LEAFS - 1 est supérieure à 0. (Il faut soustraire 1 de la valeur NLEAF parce que la dernière page élémentaire attribuée est vierge en règle générale.) * Formule F6 : (100 - PCTFREE) * [ Floor((100 - min(10, PCTFREE)) / 100 * (INDEXPAGESIZE - 96) / (ISIZE + NONLEAF_REC_OVERHEAD)) ** (NLEVELS - 2)] * (INDEXPAGESIZE - 96) / (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE) < 100 où NONLEAF_REC_OVERHEAD = 12. Permet de déterminer si la nouvelle création de l'index produira une arborescence avec moins de niveaux. Cette formule vérifie le rapport entre la quantité d'espace d'une arborescence d'index de niveau inférieur à l'arborescence actuelle, et la quantité d'espace nécessaire. Si une arborescence d'un niveau inférieur peut être créée tout en laissant PCTFREE disponible, nous vous recommandons d'effectuer une réorganisation. Le nombre actuel d'entrées d'index doit être supérieur à 90 % (ou 100 - PCTFREE) au nombre d'entrées qui peuvent être traitées par l'arborescence d'index NLEVELS - 1 (formule vérifiée uniquement si NLEVELS > 1). Remarque : Toutes les formules se basent sur des statistiques. Les statistiques et les résultats de ces formules ne sont que des estimations. Vous devez garder cette information en tête lorsque vous étudiez les résultats de REORGCHK. Commande REORG INDEXES/TABLE Permet de réorganiser un index ou une table. L'option du nom de table REORG INDEXES ALL FOR TABLE lance la réorganisation de tous les index définis dans une table à l'aide d'une reconstitution des données d'index dans des pages contiguës physiques non fragmentées. Si vous indiquez l'option CLEANUP ONLY de l'option d'index, le nettoyage est effectué sans reconstitution des index. Si vous tentez d'utiliser cette commande sur les index de tables temporaires déclarées, une erreur SQLSTATE 42995 sera retournée. L'option de nom de table REORG TABLE permet de réorganiser une table en reconstituant les lignes afin d'éliminer les données fragmentées et en comprimant les informations. La réorganisation de la table est effectuée à l'aide d'une des méthodes suivantes : Classique Autorise uniquement un accès limité en lecture seulement aux données au cours des premières phases de la réorganisation. Interne Autorise l'accès aux données tout au long de la réorganisation mais sans pouvoir garantir l'exactitude de l'ordre des données. La réorganisation de table interne est autorisée uniquement sur des tables avec des index de type 2 et sans index étendus. Lorsque vous choisissez un type de réorganisation, les index de la table sont reconstitués après la réorganisation de la table. Toutefois, avec cette méthode interne, l'index ne sera pas parfaitement réorganisé et vous devrez probablement réorganiser les index ultérieurement afin de réduire la fragmentation de l'index et de réclamer l'espace objet d'index. Exemple Pour une réorganisation REORG TABLE classique (hors connexion) comme celle définie par défaut dans la version 7 de DB2 Universal Database (UDB), saisissez la commande suivante : db2 reorg table employee index empid allow no access indexscan longlobdata Remarque : Les valeurs par défaut sont différentes dans la version 8 de DB2 UDB. Remarques DB2 UDB fournit deux méthodes de réorganisation de tables : classique et interne. En règle générale, une réorganisation de table classique est plus rapide, mais doit être utilisée uniquement si vos applications fonctionnent sans accès en écriture aux tables pendant la réorganisation. Si votre environnement n'autorise pas cette restriction, bien que la réorganisation interne soit plus lente, elle peut s'effectuer en arrière-plan alors que les accès aux données se poursuivent normalement. La réorganisation de table classique fournit la réorganisation de table la plus rapide, particulièrement si vous n'avez pas besoin de réorganiser les données LOB ou LONG. En outre, les index sont reconstitués dans un ordre parfait après la réorganisation de la table. Les applications en lecture seulement peuvent accéder à la copie originale de la table excepté au cours des dernières phases de la réorganisation, dans lesquelles la table permanente remplace la copie répliquée de la table et les index sont reconstitués. La réorganisation de table interne est plus lente et ne garantit pas l'ordre parfait des données mais elle autorise l'accès à la table aux applications pendant le réorganisation. En outre, la réorganisation de la table interne peut être suspendue et reprise ultérieurement par quiconque ayant les droits d'accès appropriés à l'aide des schémas et noms de table. Restrictions actualisées L'utilitaire REORG ne prend pas en charge l'utilisation d'alias. * La commande REORG TABLE n'est pas prise en charge pour les tables temporaires déclarées. * La commande REORG TABLE ne peut pas être utilisées sur des vues. * La réorganisation d'une table n'est pas compatible avec les tables dont les données sont reliées d'une colonne à une autre, parce que la zone concernée de la table est toujours regroupée. * Une réorganisation de table hors connexion ne permet pas de démarrer une opération de sauvegarde en ligne d'un espace table dans lequel réside la table au moment de la réorganisation. * Une réorganisation de table en ligne d'une table SMS ne permet pas de démarrer une opération de sauvegarde en ligne d'un espace table dans lequel réside la table au moment de la réorganisation. * Une réorganisation de table en ligne d'une table DMS permet de démarrer une opération de sauvegarde en ligne d'un espace table dans lequel réside la table au moment de la réorganisation. L'opération de réorganisation peut connaître des attentes sur verrouillage au cours de la phase de troncature. * REORG TABLE ne peut pas utiliser un index qui est basé sur une extension d'index. Commande BACKUP DATABASE Remarques Prenez connaissance des restrictions suivantes : * Le démarrage d'une opération de sauvegarde en ligne d'un espace table DMS est autorisé lorsqu'une table au sein du même espace table est réorganisée en ligne. L'opération de réorganisation peut connaître des attentes sur verrouillage au cours de la phase de troncature. * Le démarrage d'une opération de sauvegarde en ligne d'un espace table SMS n'est pas autorisé lorsqu'une table au sein du même espace table est réorganisée en ligne. Les deux opérations nécessitent un verrou exclusif. Migration des bases de données Restrictions La documentation de la version 8 indique de façon ambiguë qu'aucune migration de base de données n'est requise si la base de données a été migrée vers un niveau de FixPak de la version 8 de DB2 UDB. Plus précisément, la migration de base de données n'est pas requise entre fixpaks si la base de données est à un niveau de version 8 (version 8.1 ou 8.2 ou un fixpak ultérieur). Des modifications ayant été apportées à la structure de fichiers du répertoire de base de données dans la version 8.2, la migration est effectuée automatiquement lorsque vous passez de la version 7 ou de la version 8.1 à la version 8.2. En revanche, si vous passez de la version 8.2 à la version 8.1, vous devez exécuter db2demigdbd pour restaurer la structure de fichiers du répertoire de base de données. Si vous n'effectuez pas cette opération, vous recevrez l'erreur SQL10004 lorsque vous tenterez d'accéder à la base de données. db2inidb - Initialisation d'une commande de base de données miroir Ne lancez pas la commande db2 connect to base de données avant db2inidb base de données en tant que commande miroir. Toute tentative de connexion à une base de données miroir démultipliée avant de l'initialiser efface les fichiers journaux requis pour la récupération aval. La connexion restaure la base de données à l'état dans lequel elle était lorsque vous l'avez mise en suspens. Si la base de données est marquée comme étant cohérente au moment de sa mise en suspens, DB2 Universal Database conclut qu'il n'est pas nécessaire de procéder à une récupération sur incident et vide les journaux à des fins d'utilisation ultérieure. Si cette situation se produit, toute tentative de récupération aval génère une erreur SQL4970. Remarque sur l'utilisation de la commande db2iupdt A partir de la version 8.2, lorsque vous mettez à jour une instance DB2 Universal Database avec la commande db2iupdt, vous devez d'abord arrêter tout processus DB2 s'exécutant sur cette instance. Nouveau paramêtre pour la commande db2sqljcustomize La commande db2sqljcustomize est dotée d'un nouveau paramêtre db2sqljcustomize - Commande du personnaliseur de profils SQLJ DB2 -storebindoptions Permet de stocker les valeurs de -bindoptions et de -staticpositioned dans le profil en série. Si ces valeurs ne sont pas spécifiées lors de l'appel de l'outil dbsqljbind, les valeurs stockées dans le profils sérialisé seront utilisées. Lorsque le personnalisateur est appelé avec le fichier .grp, les valeurs sont stockées dans chaque fichier .ser individuel. Les valeurs stockées peuvent être visualisées à l'aide de l'outil db2sqljprint. Nouveau paramêtre pour la commande sqlj La commande sqlj est dotée d'un nouveau paramêtre sqlj - Commande du traducteur SQLJ de DB2 -db2optimize Spécifie que le traducteur SQLJ génère du code pour une classe contextuelle de connexions optimisées pour DB2 Universal Database. Cette option optimise le code pour le contexte défini par l'utilisateur, mais pas pour le contexte par défaut. Lorsque vous exécutez le traducteur SQLJ avec cette option, le fichier db2jcc.jar du pilote JDBC DB2 Universal doit se trouver dans le chemin de classe CLASSPATH pour pouvoir compiler l'application Java générée. mises à jour de la commande de surveillance et d'identification des incidents (db2pd) La commande DB2 de surveillance et d'identification des incidents (db2pd) extrait des informations des ensembles de mémoire DB2 UDB. Les améliorations apportées à la commande db2pd sont les suivantes : Nouveau paramêtre -hadr Introduit dans la version 8.2 (équivalent de la version 8.1, FixPak 7), le paramêtre -hadr rapporte les informations de reprise après incident de haute disponibilité (High Availability Disaster Recovery). Une description de chaque élément rapporté se trouve dans la section High availability disaster recovery du manuel System Monitor Guide and Reference. Nouveau paramêtre -utilities Introduit dans la version 8.2 (équivalent de la version 8.1, FixPak 7), le paramêtre -utilities rapporte les informations d'utilitaire. Une description de chaque élément rapporté se trouve dans la section Utilities du manuel System Monitor Guide and Reference. Nouveau paramêtre -activestatements Introduit dans la version 8.2.2 (équivalent de la version 8.1, FixPak 9), le paramêtre -activestatements rapporte les informations relatives aux instructions actives. Les informations renvoyées sont les suivantes : AppHandl Descripteur de l'application utilisant l'instruction active, y compris le noeud et l'index. UOW-ID Pour l'application associée à AppHandl, identificateur d'unité de travail dans lequel l'instruction est devenue active. StmtID Identificateur de l'instruction dans l'unité de travail. AnchID Identificateur de l'ancre de SQL dynamique de cache de package. StmtUID Identificateur de l'instruction SQL dynamique de cache de package unique dans l'ancre. EffISO Niveau d'isolement effectif de l'instruction. EffLockTOut Valeur de temporisation de verrouillage effectif pour l'instruction. EffDegree Degré de parallélisme effectif de l'instruction. StartTime Heure à laquelle l'instruction a été lancée. LastRefTime dernière référence à l'instruction par l'application. Nouvelle option wait pour le paramêtre -locks Avec la version 8.2.2 (équivalent de la version 8.1, FixPak 9), vous pouvez désormais indiquer l'option wait avec le paramêtre -locks pour renvoyer uniquement les verrous en attente et les verrous attendus. Nouveaux champs renvoyés par le paramêtre -applications Avec la version 8.2.2 (équivalent de la version 8.1, FixPak 9), le paramêtre -applications renvoie désormais quatre nouveaux champs : C-AnchID Ce nouveau champ est l'identificateur de l'ancre SQL dynamique de cache de package pour l'instruction courante. La valeur de ce champ est 0 si aucune instruction courante n'existe. L'identificateur d'ancre courant est renseigné uniquement lorsque l'application exécute une demande relative à une instruction, telle qu'une demande FETCH sur un curseur. Lorsque le traitement de la demande est terminée, les valeurs indiquent 0. La valeur est aussi égale à 0 pour les instructions SQL statiques. C-StmtUID Ce nouveau champ est l'identificateur unique d'instruction SQL dynamique de cache de package dans l'ancre de l'instruction courante. La valeur de ce champ est 0 si aucune instruction courante n'existe. L'identificateur unique de l'instruction courante est renseigné uniquement lorsque l'application exécute une demande relative à l'instruction. Lorsque l'exécution de la demande est terminée, les valeurs indiquent 0. La valeur est aussi égale à 0 pour les instructions SQL statiques. L-AnchID Ce nouveau champ est l'identificateur d'ancre SQL dynamique de cache de package de la dernière instruction exécutée par l'application. La valeur de ce champ est 0 si aucune instruction exécutée dernièrement n'existe (si notamment aucune instruction n'est exécutée avant une instruction SQL dynamique). La valeur est aussi égale à 0 pour les instructions SQL statiques. Le dernier identificateur d'ancre est renseigné à la fin de chaque exécution de demande et continue d'exister jusqu'à achèvement de la demande associée suivante. L-StmtUID Ce nouveau champ est l'identificateur unique d'instruction SQL dynamique de cache de package dans l'ancre de la dernière instruction exécutée par l'application. La valeur de ce champ est 0 si aucune instruction exécutée dernièrement n'existe ou si la dernière instruction exécutée était une instruction SQL statique. Le dernier identificateur d'instruction est renseigné après que la demande courante est terminée et continue d'exister jusqu'à achèvement de la demande suivante. mise à jour de la commande SET CLIENT La commande SET CLIENT spécifie les paramêtres de connexion du processus expéditeur. Le paramêtre SYNCPOINT de cette commande est ignoré à partir de la version 8. SYNCPOINT est conservé à des fins de compatibilité amont. mise à jour de la commande PRECOMPILE La commande PRECOMPILE traite un fichier source de programme d'application contenant des instructions SQL imbriquées. Un fichier source modifié est généré, il contient des appels en langage hôte pour SQL et, par défaut, un module est créé dans la base de données. Le paramêtre SYNCPOINT de cette commande est ignoré à partir de la version 8. SYNCPOINT est conservé à des fins de compatibilité amont. mise à jour de la commande UPDATE HISTORY FILE Elle met à jour l'emplacement, le type d'unité ou le commentaire d'une entrée de fichier historique. Le paramêtre de commande STATUS spécifie un nouvel état pour une entrée. La documentation précédente indique, à tort, que le paramêtre de commande STATUS peut avoir la valeur "I" pour marquer l'entrée comme inactive. Les valeurs correctes sont : A Marque l'entrée comme active. E Marque l'entrée comme expirée. mises à jour des commandes EXPORT et IMPORT Voici la sous-section "Connexion requise" complète relative aux commandes EXPORT et IMPORT : Connexion requise Base de données. Si la connexion implicite est activée, une connexion à la base de données par défaut est établie. L'accès de l'utilitaire aux serveurs de base de données Linux, UNIX, ou Windows, à partir de clients Linux, UNIX, ou Windows doit se faire par une connexion directe via le moteur et non par l'intermédiaire d'une passerelle ou d'un bouclage DB2 Connect. mise à jour de la commande LOAD Les informations complètes concernant la valeur AUTOSELECT du paramêtre INDEXING MODE sont les suivantes : INDEXING MODE AUTOSELECT L'utilitaire de chargement choisira automatiquement entre les modes REBUILD et INCREMENTAL. Ce choix dépend du volume de données chargées et de la profondeur de l'arborescence de l'index. Les informations relatives à la profondeur de l'arborescence de l'index sont stockées dans l'objet index. RUNSTATS n'est pas nécessaire pour insérer ces informations. AUTOSELECT est le mode d'indexation par défaut. Modificateurs de type de fichier pour l'utilitaire de chargement La commande SET INTEGRITY figurant dans la description du modificateur "generatedoverride" a été mise à jour. La description du modificateur "usedefaults" a également été mise à jour. Les mises à jour sont les suivantes : Tableau 30. Modificateurs de type de fichier valides pour le chargement : tous les formats de fichiers +-------------------+-------------------------------------------------+ | Modificateur | Description | +-------------------+-------------------------------------------------+ | generatedoverride | Ce modificateur demande à l'utilitaire de | | | chargement d'accepter les données fournies par | | | l'utilisateur pour toutes les colonnes générées | | | dans la table (contrairement aux règles | | | habituellement appliquées à ces types de | | | colonnes). Ceci est utile lors de la migration | | | de données d'un autre système de base de | | | données ou lors du chargement d'une table à | | | partir de données récupérées à l'aide de | | | l'option RECOVER DROPPED TABLE sur la commande | | | ROLLFORWARD DATABASE. Lors de l'utilisation de | | | ce modificateur, les lignes dépourvues de | | | données ou dotées de données NULL seront | | | refusées (SQL3116W) pour une colonne | | | n'admettant pas les valeurs NULL | | | (non-nullable). | | | Remarque : Si ce modificateur est utilisé, la | | | table sera placée à l'état CHECK PENDING. Pour | | | retirer la table de l'état CHECK PENDING sans | | | vérifier les valeurs fournies par | | | l'utilisateur, lancez la commande suivante | | | après l'opération de chargement : | | | SET INTEGRITY FOR < nom-table > GENERATED | | | COLUMN | | | IMMEDIATE UNCHECKED | | | Pour retirer la table de l'état CHECK PENDING | | | et provoquer la vérification des valeurs | | | fournies par l'utilisateur, lancez la commande | | | suivante après l'opération de chargement : | | | SET INTEGRITY FOR < nom-table > IMMEDIATE | | | CHECKED. | | | | | | Ce modificateur ne peut pas être utilisé avec | | | le modificateur generatedmissing ou | | | generatedignore. | +-------------------+-------------------------------------------------+ | usedefaults | Si une colonne source correspondant à une | | | colonne de table cible est spécifiée alors | | | qu'elle ne contient pas de données pour une ou | | | plusieurs instances de ligne, des valeurs par | | | défaut sont chargées. Exemples de données | | | manquantes : | | | * Pour des fichiers DEL : deux délimiteurs de | | | colonnes successifs (",,") ou séparés par un | | | nombre arbitraire d'espaces (", ,") sont | | | spécifiés pour une valeur de colonne. | | | * Pour des fichiers DEL/ASC/WSF : ligne dotée | | | d'un nombre de colonnes insuffisant ou qui est | | | trop courte pour la spécification d'origine. | | | Remarque : Pour les fichiers ASC, les valeurs | | | de colonne NULL ne sont pas considérées comme | | | explicitement manquantes ; aucune valeur par | | | défaut ne leur sera substituée. Les valeurs de | | | colonne NULL sont représentées par tous les | | | caractères d'espacement utilisés pour les | | | colonnes numériques, de date, d'heure et | | | d'/horodatage, ou à l'aide de NULL INDICATOR | | | pour une colonne, quel que soit son type, pour | | | indiquer que la colonne est NULL. | | | Sans cette option, si une instance de ligne | | | d'une colonne source ne contient pas de | | | données, l'un des cas suivants se présente : | | | * Pour les fichiers DEL/ASC/WSF : si la | | | colonne admet une valeur NULL, celle-ci est | | | chargée. Dans le cas contraire, l'utilitaire | | | rejette la ligne. | +-------------------+-------------------------------------------------+ Modificateurs de type de fichier pour l'utilitaire d'importation La description des modificateurs "usedefaults" et "codepage=x" a été mise à jour comme suit : Tableau 31. Modificateurs de type de fichier valides pour l'importation : tous les formats de fichiers +-------------------+-------------------------------------------------+ | Modificateur | Description | +-------------------+-------------------------------------------------+ | usedefaults | Si une colonne source correspondant à une | | | colonne de table cible est spécifiée alors | | | qu'elle ne contient pas de données pour une ou | | | plusieurs instances de ligne, des valeurs par | | | défaut sont chargées. Exemples de données | | | manquantes : | | | * Pour des fichiers DEL : deux délimiteurs de | | | colonnes successifs (",,") ou séparés par un | | | nombre arbitraire d'espaces (", ,") sont | | | spécifiés pour une valeur de colonne. | | | * Pour des fichiers DEL/ASC/WSF : ligne dotée | | | d'un nombre de colonnes insuffisant ou qui est | | | trop courte pour la spécification d'origine. | | | Remarque : Pour les fichiers ASC, les valeurs | | | de colonne NULL ne sont pas considérées comme | | | explicitement manquantes ; aucune valeur par | | | défaut ne leur sera substituée. Les valeurs de | | | colonne NULL sont représentées par tous les | | | caractères d'espacement utilisés pour les | | | colonnes numériques, de date, d'heure et | | | d'/horodatage, ou à l'aide de NULL INDICATOR | | | pour une colonne, quel que soit son type, pour | | | indiquer que la colonne est NULL. | | | Sans cette option, si une instance de ligne | | | d'une colonne source ne contient pas de | | | données, l'un des cas suivants se présente : | | | * Pour les fichiers DEL/ASC/WSF : si la | | | colonne admet une valeur NULL, celle-ci est | | | chargée. Dans le cas contraire, l'utilitaire | | | rejette la ligne. | +-------------------+-------------------------------------------------+ Tableau 32. Modificateurs de type de fichier valides pour l'importation : formats de fichier ASCII (ASC/DEL) +-------------------+-------------------------------------------------+ | Modificateur | Description | +-------------------+-------------------------------------------------+ | codepage=x | x est une chaîne de caractères ASCII. Sa valeur | | | est interprétée comme étant la page de codes | | | des données de l'ensemble de données de sortie. | | | Ce modificateur convertit les données de type | | | caractères de cette page de codes en page de | | | codes de l'application lors de l'opération | | | d'importation. | | | Les règles suivantes s'appliquent : | | | * Les jeux de caractères à deux octets purs | | | (graphique) et mixtes, le code EUC et les | | | délimiteurs sont compris entre x00 et x3F, | | | inclus. | | | * nullindchar doit spécifier des symboles | | | faisant partie du jeu ASCII standard, entre les | | | points de code x20 et x7F, inclus. Ceci fait | | | référence aux symboles ASCII et aux points de | | | code. | | | | | | Remarques: | | | 1. Le modificateur codepage ne peut pas être | | | utilisé avec le modificateur lobsinfile. | | | 2. Si une expansion des données se produit | | | lors de la conversion de la page de codes, de | | | l'application à la base de données, les données | | | risquent d'être tronquées ou perdues. | +-------------------+-------------------------------------------------+ Commande ATTACH Le paramêtre USER de la commande ATTACH spécifie l'identificateur d'authentification. Lorsque vous utilisez cette commande avec une instance DB2 Universal Database sous Windows, le nom d'utilisateur peut être spécifié dans un format compatible avec le gestionnaire SAM (Security Account Manager) de Microsoft Windows NT. Le qualificatif doit être un nom de style NetBIOS, avec un longueur maximum de 15 caractères. Par exemple, nomdomaine\nomutilisateur. Commande RECOVER DATABASE Dans la section Exemples de la commande RECOVER DATABASE de la documentation de la version 8.2, les horodatages sont présentés dans un format incorrect (aaaa:mm:jj:hh:mm:ss). Le bon format est aaaa-mm-jj-hh.mm.ss Commande UPDATE HISTORY FILE La commande UPDATE HISTORY FILE permet de mettre à jour l'emplacement, le type d'unité, les commentaires ou l'état d'une entrée de fichier historique. mise à jour de la syntaxe de commande >>-UPDATE HISTORY--+-FOR--object-part-+--WITH-------------------> '-EID--eid---------' >--+-LOCATION--new-location--DEVICE TYPE--new-device-type-+---->< +-COMMENT--new-comment---------------------------------+ '-STATUS--new-status-----------------------------------' mise à jour des paramêtres de commande FOR object-part Spécifie l'identificateur pour l'entrée d'historique à mettre à jour. Il s'agit d'un horodatage avec un numéro de séquence complémentaire allant de 001 à 999. Remarque : Ne peut pas être utilisé pour mettre à jour l'état de l'entrée. Pour mettre à jour l'état de l'entrée, spécifiez un EID à la place. STATUS new-status Spécifie un nouvel état pour une entrée. Seules les entrées sauvegardées peuvent avoir leur état mis à jour. Les valeurs correctes sont : A Active. La plupart des entrées sont actives. I Inactive. Les images de sauvegarde qui ne sont plus dans la chaîne de journal active deviennent inactives. E Expiré. Les images de sauvegarde ne sont plus requises parce qu'il y a plus de NUM_DB_BACKUPS. Les images actives sont marquées comme étant expirées. D Les images de sauvegarde qui ne sont plus disponibles pour la récupération doivent être marquées comme ayant été supprimées. db2updv8 - mise à jour de la base de données avec la commande de niveau actuel version 8 Cette commande met à jour les catalogues système dans une base de données afin de prendre en charge le niveau en cours : * Introduction de nouvelles routines livrées avec le gestionnaire de base de données en cours * Catalogage des procédures de schémas ODBC/CLI/JDBC en tant que procédures de confiance pour l'amélioration des performances et l'évolutivité * Corrections de deux erreurs typographiques dans les paramêtres de renvoi de la fonction de table SYSPROC.SNAPSHOT_QUIESCERS : * OUIESCER_TBS_ID corrigé par QUIESCER_TBS_ID * OUIESCER_STATE corrigé par QUIESCER_STATE * Correction des descripteurs de colonnes OB de sorte que la partie "journalisé" soit cohérente avec les tables de catalogue * Création de la vue SYSIBM.SYSREVTYPEMAPPINGS * mise à jour des définitions de vues pour SYSSTAT.COLUMNS et SYSSTAT.TABLES * mise à jour de la colonne SYSCOLDIST.DISTCOUNT pour qu'elle soit actualisable * mise à jour de colonne SYSINDEXES.TBSPACEID pour que les marqueurs de colonnes ne soit pas définis * Correction des longueurs de paramêtres de 17 fonctions de table. Voir la rubrique relative à l' extension de colonnes pour les fonctions UDF d'images instantanées dans la section mises à jour de la documentation | Routines administratives SQL des Remarques sur le produit - Version 8.2 pour obtenir une liste exhaustive de fonctions. * Active les routines intégrées suivantes : * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * GET_WRAP_CFG_C * LIST_FILES_C * ODBC_DISCOVERY * HEALTH_HI_REC * EXEC_DB2_SCRIPT * HEALTH_HI_REC * EXEC_DB2_SCRIPT * ADMIN_LIST_HIST * GET_DBM_CONFIG * Modifie les fonctions UDF d'image instantanée 33 SYSPROC avec THREADSAFE : * SNAPSHOT_DBM * SNAPSHOT_FCM * SNAPSHOT_FCMNODE * SNAPSHOT_SWITCHES * SNAPSHOT_APPL_INFO * SNAPSHOT_APPL * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_AGENT * SNAPSHOT_SUBSECT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_DYN_SQL * SNAPSHOT_TBS * SNAPSHOT_TBS_CFG * SNAPSHOT_QUIESCERS * SNAPSHOT_CONTAINER * SNAPSHOT_RANGES * SNAPSHOT_TBREORG * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * Modifie les longueurs de paramêtre des fonctions suivantes : * SQLCACHE_SNAPSHOT * SNAPSHOT_APPL_INFO * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_TBREORG * SNAPSHOT_SUBSECT * SNAPSHOT_DYN_SQL * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * DB_PARTITIONS * GROUPS_FOR_USER * DB_PARTITION * Modifie les fonctions suivantes pour utiliser le schéma db2schema au lieu du schéma obsolète db2schem et les active pour modifier les données SQL : * SQLTABLES * SQLTABLEPRIVILEGES * SQLSTATISTICS * SQLSPECIALCOLUMNS * SQLPROCEDURES * SQLPROCEDURECOLS * SQLPRIMARYKEYS * SQLFOREIGNKEYS * SQLCOLUMNS * SQLCOLPRIVILEGES * Modifie les fonctions suivantes afin d'utiliser le schéma db2schema au lieu du schéma obsolète db2schem : * SQLUDTS * SQLGETTYPEINFO Autorisation sysadm Connexion requise Base de données. Cette commande établit automatiquement une connexion à la base de données spécifiée. Syntaxe de commande >>-db2updv8-- -d--nom-bdd---------------------------------------> >--+---------------------------------+--+-----+---------------->< '- -u--id-util-- -p--mot-de-passe-' '- -h-' Paramêtres de commande -d database-name Spécifie le nom de la base de données à mettre à jour -u userid Spécifie l'ID utilisateur. -p password Spécifie le mot de passe utilisateur. -h Affiche des informations d'aide. Lorsque cette option est spécifiée, toutes les autres options sont ignorées et seules les informations d'aide sont affichées. Exemple Une fois le niveau actuel installé (FixPack ou nouvelle version), mettez à jour le catalogue système dans le modèle de base de données en émettant la commande suivante : db2updv8 -d sample Remarques 1. Cette commande ne peut être utilisée que sur une base de données exécutant DB2 Universal Database version 8.1.2 ou ultérieure. Si la commande est émise plus d'une fois, aucune erreur n'est rapportée et chacune des mises à jour de catalogue n'est appliquée qu'une fois. 2. Pour activer les nouvelles fonctions intégrées, toutes les applications doivent se déconnecter de la base de données et la base de données doit être désactivée si elle a été activée. Formatage de fichiers de déroutement (Windows) Un nouvel outil, db2xprt.exe, est disponible pour le formatage des fichiers de déroutement (*.TRP). Cet outil formate les fichiers de déroutement binaires de DB2 Universal Database en un fichier ASCII lisible par l'utilisateur. Les fichiers de déroutement sont situés par défaut dans le répertoire d'instance (DB2INSTPROF) ou sur le chemin d'accès au répertoire des données de diagnostic si le paramêtre de configuration du gestionnaire de bases de données DIAGPATH est défini. Autorisation Vous devez avoir accès au répertoire DIAGPATH. Syntaxe de commande >>-db2xprt--+------------+--+----+--+----+----------------------> +-/p--chemin-+ '-/m-' '-/n-' '-/v---------' >--fichier-ent--+-------------+-------------------------------->< '-fichier-sor-' Paramêtres de commande /p chemin Un chemin séparé par point virgule (;) pointant vers l'emplacement ou les emplacements des fichiers binaires et PDB. /v Affiche les informations relatives à la version. /m Formate un vidage mémoire avec le reste du fichier de déroutement. /n Formate les données sans prise en compte des informations de numéros de ligne. fichier-ent Spécifie le fichier d'entrée. fichier-sor Spécifie le fichier de sortie. Mouvement des données Fichiers de liens utilisés par les utilitaires d'exportation, d'importation et de chargement Un nouveau fichier de liens nommé db2uImpInsUpdate.bnd a été ajouté dans l'utilitaire d'importation, avec le niveau d'isolement par défaut Lecture stable (Read Stability - RS). Ce fichier de liens est utilisé par l'utilitaire d'importation uniquement lors de INSERT_UPDATE. Les options INSERT, REPLACE et CREATE de l'utilitaire d'importation continuent d'utiliser le fichier db2uimpm.bnd. Le fichier db2uImpInsUpdate.bnd ne peut pas être lié avec l'option INSERT BUF. Une tentative d'exécution de IMPORT INSERT_UPDATE alors que le fichier db2uImpInsUpdate.bnd est lié avec INSERT BUF met en échec l'utilitaire d'importation et a pour résultat l'erreur suivante : SQL3525: Les options "INSERT_UPDATE" et "INSERT BUF BIND ON DB2UIMPINSUPDATE.BND" sont incompatibles. Utilisation de l'importation avec des insertions mises en mémoire tampon La version 8.2 du manuel Data Movement Utilities Guide and Reference indique ce qui suit : La fonction d'insertions mises en mémoire tampon ne peut pas être utilisée conjointement avec des opérations d'importation dans lesquelles le paramêtre INSERT_UPDATE est indiqué. Un nouveau fichier de liens (db2uimpm2.bnd) a été créé pour que soit appliquée cette restriction. Etant donné l'existence de ce nouveau fichier de liens, voici ce qu'il faut comprendre : La fonction d'insertions mises en mémoire tampon ne peut pas être utilisée conjointement avec des opérations d'importation dans lesquelles le paramêtre INSERT_UPDATE est indiqué. Un nouveau fichier de liens (db2uImpInsUpdate.bnd) a été créé pour que soit appliquée cette restriction. Perte d'informations d'index lors de l'utilisation de l'utilitaire d'importation Vous pouvez utiliser l'utilitaire d'importation pour recréer une table sauvegardée par l'intermédiaire de l'utilitaire d'exportation. La rubrique "Using import to recreate an exported table" de Data Movement indique les attributs non conservés de la table d'origine. Voici d'autres attributs non conservés : * Informations d'index : * Inclure des colonnes (le cas échéant) * Nom d'index, s'il s'agit d'un index de clé primaire * Ordre décroissant, s'il s'agit d'un index de clé primaire (ascendant par défaut) Récupération de données et haute disponibilité Généralités sur la sauvegarde Prenez connaissance des restrictions suivantes : * Le démarrage d'une opération de sauvegarde en ligne d'un espace table DMS est autorisé lorsqu'une table au sein du même espace table est réorganisée en ligne. L'opération de réorganisation peut connaître des attentes sur verrouillage au cours de la phase de troncature. * Le démarrage d'une opération de sauvegarde en ligne d'un espace table SMS n'est pas autorisé lorsqu'une table au sein du même espace table est réorganisée en ligne. Les deux opérations nécessitent un verrou exclusif. Utilisation de la sauvegarde Les restrictions suivantes s'appliquent à l'utilitaire de sauvegarde : * Une opération de sauvegarde d'espace table et une opération de restauration d'espace table ne peuvent pas être exécutées en même temps, même si différents espaces table sont concernés. * Pour effectuer une récupération en aval dans un environnement de base de données partitionnées, vous devez sauvegarder régulièrement la base de données sur la liste des noeuds, et vous devez avoir au moins une image de sauvegarde du reste des noeuds sur le système (même ceux qui ne contiennent pas de données utilisateur pour cette base de données). Deux situations nécessitent l'image sauvegardée d'une partition de base de données au niveau d'un serveur de partition de base de données qui ne contient pas de données utilisateur pour la base de données : * L'ajout d'un serveur de partition de base de données au système de base de données après avoir effectué la dernière sauvegarde et la nécessité d'effectuer une reprise en aval sur ce serveur de partition de base de données. * Une reprise à partir d'un point de cohérence est utilisée, et nécessite que toutes les partitions de la base de données du système soient en état de récupération aval en attente. * Les opérations de sauvegarde en ligne des espaces table DMS sont incompatibles avec les opérations suivantes : * Chargement * Réorganisation (uniquement hors connexion) ; (vous pouvez utiliser la réorganisation en ligne d'une table dans l'espace table qui est sauvegardé, bien que des attentes sur verrouillage soient à prévoir au cours de la phase de troncature de l'opération de réorganisation). * Suppression d'espace table * Troncature de table * Création d'index * Non enregistré initialement (utilisé avec les instructions CREATE TABLE et ALTER TABLE) Présentation du HADR (High Availability Disaster Recovery) Lorsque vous exécutez les commandes START HADR, STOP HADR ou TAKEOVER HADR, les codes d'erreur correspondants peuvent être générés : SQL01767N, SQL01769N, ou SQL01770N avec le code anomalie 98. Ce dernier indique que la licence de HADR n'est pas installée sur le serveur sur lequel la commande a été exécutée. Pour résoudre ce problème, installez une licence HADR valide à l'aide de db2licm ou une version du serveur dont la distribution comprend la licence HADR. Prise en charge de la sauvegarde inter-plateformes et de la restauration DB2 Universal Database (UDB) prend en charge les opérations de sauvegarde et de restauration multiplateformes. Vous pouvez restaurer des bases de données créées sur une plateforme Windows 32 bits DB2 UDB, version 8 sur une plateforme Windows 64 bits DB2 UDB, version 8, ou l'inverse. Vous pouvez restaurer des bases de données créées sur une plateforme Linux x86 32 bits DB2 UDB, version 8 sur une plateforme Linux x86-64 ou IA64 64 bits DB2 UDB version 8, et inversement. Vous pouvez restaurer des bases de données créées avec DB2 UDB version 8 sous AIX, HP-UX, Linux PPC, Linux zSeries, ou dans l'environnement d'exploitation Solaris, en 32 bits ou 64 bits, vers DB2 UDB version 8 sous AIX, HP-UX, Linux PPC, Linux zSeries ou l'environnement d'exploitation Solaris (32 bits ou 64 bits). Sauvegarde sur bande (Linux) La taille de bloc maximale pour les unités de bande 3480 et 3490 sous Linux est de 61 440 octets Tableau 33. Taille de bloc maximale pour les unités de bande 3480 et 3490 sous Linux +-----------------+-----------------+----------------+----------------+ | Unité | Connexion | Limite de | Taille maximum | | | | taille de bloc | de tampon DB2 | | | | | (en pages de 4 | | | | | ko) | +-----------------+-----------------+----------------+----------------+ | 3480 | s370 | 61 440 | 15 | +-----------------+-----------------+----------------+----------------+ | 3490 | s370 | 61 440 | 15 | +-----------------+-----------------+----------------+----------------+ Tivoli Storage Manager Lors de l'appel des commandes BACKUP DATABASE ou RESTORE DATABASE, vous pouvez spécifier que vous souhaitez utiliser le produit Tivoli Storage Manager (TSM) pour gérer l'opération de sauvegarde ou de restauration de la base de données ou de l'espace table. Le niveau minimum suivant de l'API client TSM est la version 4.2.0, sauf dans les cas suivants : * systèmes Solaris 64 bits nécessitant une API client TSM version 4.2.1. * systèmes d'exploitation Windows NT 64 bits nécessitant l'API client TSM version 5.1. * Linux 32 bits pour iSeries et pSeries nécessitant au minimum l'API client TSM version 5.1.5 * Linux 64 bits pour iSeries et pSeries, nécessitant au minimum l'API client TSM version 5.3 * Linux 64 bits sur système AMD Opteron nécessitant une API client TSM version 5.2.0. * Linux 64 bits pour zSeries nécessitant au minimum une API client TSM version 5.2.2. Restrictions de valeurs pour l'hôte local HADR et les paramêtres de service locaux Lors de la spécification de valeurs pour l'hôte local HADR et les paramêtres locaux de service (HADR_LOCAL_SVC et HADR_REMOTE_SVC) lors de la préparation d'une commande update database configuration , les valeurs doivent être des ports qui ne sont pas utilisés pour un autre service. Si les paramêtres sont configurés à l'aide d'une ligne de commande Linux ou UNIX, les valeurs doivent également être définies dans le fichier /etc/services. Configuration système supplémentaires pour HADR Si vous créez un espace table sur la base de données principale et que la lecture de journal échoue sur la base de données en attente parce que les conteneurs ne sont pas disponibles, la base de données principale ne reçoit pas un message d'erreur indiquant l'échec de lecture journal. Pour vérifier les erreurs d'exécution de journal, vous devez contrôler le fichier db2diag.log et le journal d'administration sur la base de données en attente lorsque vous créez de nouveaux espaces table. Si une opération de relais intervient, le nouvel espace table créé n'est pas disponible sur la nouvelle base de données principale. Pour récupérer de cette situation, restaurez l'espace table sur la base de données principale à partir d'une image de sauvegarde. Dans l'exemple suivant, l'espace table MY_TABLESPACE est restauré sur la base de données MY_DATABASE avant qu'il soit utilisé en tant que nouvelle base de données principale : 1. db2 connect to my_database 2. db2 list tablespaces show detail Remarque : Exécutez la commande db2 list tablespaces show detail pour afficher l'état de tous les espaces table et obtenir l'ID d'espace table requis pour l'étape 5. 3. db2 stop hadr on database my_database 4. db2 "restore database my_database tablespace (my_tablespace) online redirect" 5. db2 "set tablespace containers for my_tablespace_ID_# ignore rollforward container operations using (path '/my_new_container_path/')" 6. db2 "restore database my_database continue" 7. db2 rollforward database my_database to end of logs and stop tablespace "(my_tablespace)" 8. db2 start hadr on database my_database as primary Opérations non répliquées pour la récupération HADR La documentation version 8.2 indique : Les BLOB et CLOB ne sont pas répliqués. Toutefois, l'espace qui leur est dédié sera alloué sur la base de données en attente. L'instruction doit être corrigée comme suit : Les BLOB et CLOB non journalisés ne sont pas répliqués. Toutefois, l'espace qui leur est dédié sera alloué sur la base de données en attente. HADR ne prend pas en charge les journaux bruts L'utilitaire HADR ne prend pas en charge l'utilisation d'E-S brutes (accès disque direct) pour les fichiers journaux de base de données. Si HADR est démarré avec la commande START HADR ou si la base de données est redémarré avec HADR configuré, et que des journaux bruts sont détectés, la commande associée échouera avec le code anomalie SQL1768N "9". Comparaison entre un moniteur de panne et un moniteur de santé Le moniteur de santé et le moniteur de panne sont des outils qui fonctionnent sur une seule instance de base de données. Le moniteur de santé utilise des indicateurs de santé afin d'évaluer la santé de certains aspects spécifiques aux performances de la base de données et du gestionnaire de base. Un indicateur de santé mesure la santé de certains aspects d'une classe spécifique d'objets de base de données, tels qu'un espace table. Les indicateurs de santé sont évalués par rapport à des critères précis afin de déterminer la santé de cette classe d'objet de base de données. En outre, les indicateurs de santé peuvent générer des alertes afin de vous informer qu'un indicateur dépasse un certain seuil ou bien indiquer qu'un objet de base de données est dans un état anormal. Par comparaison, le moniteur de panne est le seul responsable du maintien en bon état de fonctionnement de l'instance qu'il gère. Si l'instance DB2 UDB qu'il gère se termine de façon inattendue, le moniteur de panne redémarre l'instance. Ce moniteur n'est pas disponible sous Windows. arrêt du contrôle de panne Pour arrêter le contrôle de panne pour l'instance de base de données DB2INST1, saisissez la commande suivante à partir d'une fenêtre de commande DB2 UDB : db2fm -i db2inst1 -f no Remarque : Si le fichier de registre de moniteur de panne n'existe pas, les valeurs par défaut sont utilisées. Afin de vous assurer que le moniteur de panne ne fonctionne plus pour DB2INST1, saisissez la commande suivante pour les systèmes UNIX : ps -ef|grep -i fm Dans les systèmes Linux, saisissez la commande suivante : ps auxw|grep -i fm Une entrée affichant db2fmd et DB2INST1 indique que le moniteur de panne fonctionne toujours sur cette instance. Pour arrêter le moniteur de panne, saisissez la commande suivante en tant que propriétaire de l'instance : db2fm -i db2inst1 -D Data Warehouse Center Définition de l'environnement client d'entrepôt de données dans les systèmes d'exploitation AIX et Solaris Dans les systèmes d'exploitation AIX et Solaris, vous devez définir vos paramêtres régionaux correctement avant d'exécuter le client d'entrepôt de données. Pour définir vos paramêtres régionaux, saisissez la commande suivante à partir de la ligne de commande : export LC_ALL= Voici un exemple : export LC_ALL=Ja_JP où Ja_JP représente vos paramêtres régionaux. Si cette variable d'environnement n'est pas définie, les applications à interface graphique peuvent ne pas fonctionner correctement et engendrer des erreurs Java. mise à jour de la configuration du gestionnaire de bases de données avant l'installation des fonctions de transformation d'entrepôt Dans le manuel DB2 Warehouse Manager Standard Edition Installation Guide, version 8.2, la rubrique relative à la "mise à jour de la configuration du gestionnaire de bases de données avant l'installation des fonctions de transformation d'entrepôt" vous demande à tort de mettre à jour le paramêtre du chemin d'accès au SDK. Vous devez mettre à jour le paramêtre du chemin d'accès au JDK. A l'aide de l'interpréteur de commandes DB2, mettez à jour la configuration du gestionnaire de bases de données pour l'instance DB2 cible avant d'installer les fonctions Transformation d'entrepôt. Procédure Pour mettre à jour de la configuration du gestionnaire de bases de données avant d'installer les fonctions Transformation d'entrepôt : 1. Définissez le paramêtre JDK_PATH (chemin d'accès au JDK) en lui donnant pour valeur le sous-répertoire où le JDK est installé : UPDATE DATABASE MANAGER CONFIGURATION USING JDK_PATH chemin où chemin représente le sous-répertoire d'installation du JDK. Remarque : N'indiquez pas le répertoire bin dans le chemin d'accès au JDK. Si vous utilisez une cible DB2 Universal Database version 7.2 (ou précédente) pour laquelle les fonctions de transformation sont installées, vous devez mettre à jour le paramêtre JDK11_PATH (et non JDK_PATH). 2. Attribuez la valeur 4096 au paramêtre JAVA_HEAP_SZ (taille du segment de mémoire dynamique de la JVM) : UPDATE DATABASE MANAGER CONFIGURATION USING JAVA_HEAP_SZ 4096 Variable d'environnement VW_NETRC ajoutée au Data Warehouse Center (UNIX) A partir du FixPak 10 de la version 8.2 (équivalente de la version 8.1, FixPak 3) du Data Warehouse Center, vous pouvez définir la variable d'environnement VW_NETRC sur les systèmes d'exploitation UNIX, à l'exception de Linux. Vous pouvez gérer manuellement le fichier .netrc en définissant la variable d'environnement VW_NETRC sur Off. Consultez la documentation de votre système d'exploitation pour obtenir plus d'information sur le format correct du fichier .netrc. L'exécution de programmes définis par l'utilisateur FTP concurrents peut endommager le fichier .netrc. Pour exécuter les étapes de ces programmes concurrents, vous pouvez définir la variable d'environnement VW_NETRC sur Off (VW_NETRC=OFF). Ajoutez cette variable d'environnement au profil du démon de votre agent pour les agents distants et au fichier IWH.environment pour votre agent local ou agent par défaut. DB2 Data Warehouse Center requiert une base de données au format Unicode après avoir installé DB2 Universal Database, version 8.1 FixPak 7 ou supérieur, vous devez exécuter l'outil Warehouse Control Database Management pour créer une nouvelle base de données de contrôle d'entrepôt au format Unicode. Conditions préalables Pour créer et stocker une copie de la base de données de contrôle d'entrepôt existante, votre poste de travail doit disposer de l'espace disque nécessaire pour stocker cette copie et le double d'espace requis par la base de données de contrôle d'entrepôt pour stocker les fichiers temporaires. Par exemple, si la base de données de contrôle d'entrepôt existante a une taille égale à 10 Mo, un total de 30 Mo doit être disponible dans l'instance où se trouve la base de données de contrôle d'entrepôt existante. Procédure Pour créer une base de données de contrôle d'entrepôt au format Unicode, exécutez les étapes suivantes : 1. Exécutez l'outil Warehouse Control Database Management : * Sous Windows : cliquez sur Démarrer et sélectionnez Programmes -> IBM DB2-> Outils de configuration-> Gestion de la base de contrôle d'entrepôt. * Sous AIX : exécutez le script db2wcdbm. 2. Entrez le nom de la base de données de contrôle d'entrepôt existante. Vous êtes ensuite invité à entrer un nouveau nom de base de données de contrôle d'entrepôt. Une nouvelle base de données de contrôle d'entrepôt Unicode est créée. Définition des sources et cibles d'entrepôt de DB2 Deux rubriques de Data Warehouse Center nécessitent les mises à jour suivantes : * Définition des sources d'entrepôt de DB2 * Définition d'une cible d'entrepôt Par défaut, lorsque vous définissez une source ou une cible d'entrepôt, 250 tables sont renvoyées. Toutefois, vous pouvez utiliser la nouvelle variable d'environnement VWS_MAX_TABLELIST pour spécifier le nombre de tables à renvoyer. 40 000 tables au maximum peuvent être renvoyées. Ce nombre peut être inférieur en fonction de la taille des noms de tables de la liste. Il est recommandé de spécifier beaucoup moins que 40 000 tables. mises à jour du tutoriel Business Intelligence Vérification que les bases de données DWCTBC et TBC_MD sont enregistrées auprès d'ODBC Dans la version 8, il n'est pas nécessaire que la base de données de contrôle, TBC_MD utilisée dans le tutoriel, soit une source de données ODBC système. Cependant, la base de données cible ou la source de base de données DWCTBC doit être une source de données ODBC. Ouverture du bloc-notes Définition d'une source d'entrepôt La procédure d'ouverture du bloc-notes Définition d'une source d'entrepôt pour la source relationnelle du tutoriel a changé. Procédure Pour ouvrir le bloc-notes Définition d'une source d'entrepôt pour la source relationnelle du tutoriel, procédez comme suit : 1. Dans la fenêtre Data Warehouse Center, cliquez avec le bouton droit sur le dossier Sources d'entrepôt. 2. Cliquez sur Définition --> ODBC --> DB2 --> Famille DB2. Le bloc-notes Définition d'une source d'entrepôt s'ouvre. Ouverture du bloc-notes Définition d'une cible d'entrepôt La procédure d'ouverture du bloc-notes Définition d'une cible d'entrepôt a changé. Procédure Pour ouvrir le bloc-notes Définition d'une cible d'entrepôt, procédez comme suit : 1. Dans la fenêtre Data Warehouse Center, cliquez avec le bouton droit sur le dossier Cibles d'entrepôt. 2. Cliquez sur Définition --> ODBC --> DB2 --> Famille DB2. Le bloc-notes Définition d'une cible d'entrepôt s'ouvre. Définition du seuil de purge pour les fichiers journaux de l'entrepôt Le fichier journal conserve des enregistrements jusqu'à ce qu'un nombre maximal soit atteint. Par défaut, le nombre maximal est 1000 enregistrements. Généralement, chaque travail exécuté crée 12 à 15 enregistrements de journal. Indiquez un seuil de purge correspondant à vos besoins en mettant à jour la zone Purge du journal lorsque le nombre total d'enregistrements atteint de l'onglet Serveur de la page des propriétés de l'entrepôt. Prise en charge de Data Warehouse Center pour le chargement CURSOR L'étape Chargement de DB2 Universal Database permet désormais d'utiliser une vue ou une table comme source, entraînant un chargement à partir du curseur. Afin de mapper des colonnes dans l'assistant pour le chargement à partir du curseur, le bouton d'option Colonnes mappées basées sur les positions de colonnes trouvées dans le fichier d'entrée doit être sélectionné. Limites et migration de la base de données de contrôle de l'entrepôt Unicode Dans Data Warehouse Center version 8.2, la base de contrôle d'entrepôt doit être une base Unicode. Si vous disposez d'une base de données de contrôle d'entrepôt Unicode sur une version de Data Warehouse Center antérieure à la version 8.2, vous devez quand même créer un nouvelle base de données de contrôle Unicode à l'aide de l'outil de gestion de bases de données de contrôle d'entrepôt. Lorsque vous migrez une base de données de contrôle d'entrepôt à partir d'une version de Data Warehouse Center antérieure à la version 8.2, l'outil de gestion de base de données de contrôle de Data Warehouse Center exécute la commande db2move pour déplacer les données vers la nouvelle base de données de contrôle Unicode. Pendant cette phase, une fenêtre indiquant la progression de la commande db2move apparaît. Ce mode de migration n'intervient qu'une fois. Data Warehouse Center ne prend pas en charge Unicode sur les serveurs Sybase. Modification du format de date de la colonne Modification Dans la vue de détails de la fenêtre principale de Data Warehouse Center, le format de date de la colonne Modification est mis à jour. Dans la colonne Modification, la date est affichée au format de votre environnement local et comprend l'heure. Cette modification du format de date permet de garantir que le tri d'objets de la colonne Modification fonctionne correctement. Cette mise à jour s'applique à la plupart des objets de Data Warehouse Center indiqué dans les vues de navigation et de détails : * Domaines * Processus * Schémas d'entrepôt * Sites agent d'entrepôt * Programmes * Etapes * Ressources de données * Utilisateurs * Groupes d'utilisateurs Définition des fonctions de transformation statistiques dans Data Warehouse Center Pour effectuer des transformations statistiques de vos données, définissez la fonction de transformation statistique que vous souhaitez utiliser. Procédure Pour définir les fonctions de transformation statistiques : 1. Ouvrez la fenêtre Modèle de processus. 2. Cliquez sur l'icône de la fonction Transformation et sélectionnez une fonction dans la liste des fonctions Transformation disponibles. 3. Liez la fonction de transformation sélectionnée à une source d'entrepôt et à la cible d'entrepôt comme requis par les règles pour cette fonction. Chaque fonction Transformation dispose de règles spécifiques pour savoir comment elle doit être liée à des sources et cibles d'entrepôt. Reportez-vous à la documentation appropriée pour plus de détails. Préparation de l'installation des agents d'entrepôt Lors de l'installation du gestionnaire DB2 Warehouse Manager, le serveur d'entrepôt, le client d'entrepôt et l'ensemble des agents d'entrepôts doivent avoir une version et un niveau de groupe de correctifs identiques. Configuration requise pour l'agent d'entrepôt iSeries Pour utiliser un agent d'entrepôt iSeries pour DB2 Warehouse Manager, sur des systèmes V5R2 et V5R3, le correctif PTF suivant est requis : PTF SI13558 Ce correctif de base de données permet d'activer le CLI sur iSeries pour la gestion des données Unicode. DB2 .NET Data Provider Prise en charge du programme de lecture de données actives concurrentes Le fournisseur de données DB2 .NET prend désormais en charge l'utilisation des programmes de lecture de données actives concurrentes. En d'autres termes, vous pouvez avoir accès en même temps aux données de plusieurs instances DB2DataReader qui utilisent la même instance DB2Connection. Chaque instance DB2DataReader doit être associée à sa propre instance DB2Command. Afin de pouvoir utiliser l'instance DB2Command associée pour toute autre fin, vous devez explicitement appeler la méthode DB2DataReader.Close. Propriété DB2Connection.ConnectionString Un mot clé supplémentaire existe pour la propriété DB2Connection.ConnectionString : CurrentSchema Schéma à utiliser après une connexion réussie. Lors d'une connexion réussie, une instruction SET CURRENT SCHEMA est envoyée au serveur DB2. Cela permet à l'application de nommer les objets SQL sans avoir à les qualifier par un nom de schéma. DB2 Connect Modification apportée à la négociation de type d'authentification via une passerelle Avec la version 8.2.2 de DB2 Connect (équivalent de la version 8.1, FixPak 9), la passerelle n'est désormais plus un participant passif lors de la négociation d'authentification. La passerelle joue désormais un rôle actif. Le type d'authentification indiqué dans l'entrée de répertoire de base de données sur la passerelle remplace le type d'authentification catalogué sur le client. Le client, la passerelle et le serveur doivent tous trois indiquer des types compatibles. Si le type d'authentification catalogué sur la passerelle n'a pas été indiqué dans l'entrée de répertoire de base de données, l'authentification SERVER sera le type par défaut requis du serveur. Néanmoins, la négociation continuera d'avoir lieu entre le client et le serveur si le serveur ne prend pas en charge l'authentification SERVER. Ce comportement est contraire à celui du client qui adopte par défaut SERVER_ENCRYPT si aucun type d'authentification n'a été indiqué. Le type d'authentification catalogué sur la passerelle n'est pas utilisé si DB2NODE ou l'option SQL_CONNECT_NODE de l'API Set Client a été défini sur le client. Dans de tels cas, la négociation s'effectue strictement entre le client et le serveur. Un serveur pour lequel le type d'authentification SERVER_ENCRYPT est indiqué dans la configuration du gestionnaire de base de données accepte des connexions de clients qui demandent une authentification SERVER. Nouveau scénario de sécurité Un nouveau scénario de sécurité a été ajouté aux connexions APPC : Authentication GSSPLUGIN Security Aucune Validation Mécanisme module de sécurité API GSS Corrections apportées aux diagrammes Les rubriques suivantes de DB2 Connect Enterprise Edition comportent des diagrammes incorrects : * accès aux données DB2 hôte ou iSeries via DB2 Connect Enterprise Edition * accès aux données DB2 à partir du Web, à l'aide de Java Le tableau suivant présente les corrections apportées aux diagrammes de la rubrique "accès aux données DB2 hôte ou iSeries via DB2 Connect Enterprise Edition". Tableau 34. Corrections apportées aux diagrammes de la rubrique "accès aux données DB2 hôte ou iSeries via DB2 Connect Enterprise Edition" +-------------------+-------------------------------------------------+ | Localisation dans | Correction | | la rubrique | | +-------------------+-------------------------------------------------+ | Légende pour les | * Les références à "DB2 pour OS/390 V5R1" | | quatre diagrammes | doivent être remplacées par "DB2 pour OS/390 V6 | | | ou ultérieure". | | | * Les références à "DB2 pour AS/400 V4R2" | | | doivent être remplacées par "DB2 pour iSeries | | | V5R1 ou ultérieure". | +-------------------+-------------------------------------------------+ | Premier diagramme | Toutes les références à "APPC" et "Prise en | | (Figure 1 : DB2 | charge des communications SNA" sont | | Connect | incorrectes. SNA/APPC n'est pas pris en charge | | Enterprise | en tant que protocole d'entrée pour DB2 Runtime | | Edition) | Client par les serveurs DB2 Linux, Unix et | | | Windows, y compris DB2 Connect Enterprise | | | Edition. | +-------------------+-------------------------------------------------+ Le tableau suivant présente les corrections apportées aux diagrammes de la rubrique "accès aux données DB2 à partir du Web à l'aide de Java". Tableau 35. Corrections apportées aux diagrammes de la rubrique "accès aux données DB2 à partir du Web à l'aide de Java" +-------------------+-------------------------------------------------+ | Localisation dans | Correction | | la rubrique | | +-------------------+-------------------------------------------------+ | Légende | * Les références à "DB2 pour OS/390 V5R1" | | | doivent être remplacées par "DB2 pour OS/390 V6 | | | ou ultérieure". | | | * Les références à "DB2 pour AS/400 V4R2" | | | doivent être remplacées par "DB2 pour iSeries | | | V5R1 ou ultérieure". | +-------------------+-------------------------------------------------+ Centre de développement La version 8.2 de DB2 Development Center requiert le niveau 9.2.9 de Distributed Debugger La version 8.2 de DB2 Development Center requiert désormais la version 9.2.9 d'IBM Distributed Debugger. Si vous n'avez pas installé la version 9.2.9 de Distributed Debugger, vous ne pouvez pas déboguer les procédures mémorisées Java à l'aide du Development Center. La version 9.2.9 de Distributed Debugger ne prend plus en charge les environnements d'exploitation Solaris. Pour plus d'informations sur Distributed Debugger, visitez le site Web Distributed Debugger à l'adresse suivante : http://www.ibm.com/software/awdtools/debugger. Restriction de longueur dans la fenêtre de modification de variable de DB2 Development Center Lorsque vous modifiez la longueur d'une variable à l'aide de la boîte de dialogue de modification de variable de DB2 Development Center, la longueur maximale est de 1 024 octets. Cette limite est actuellement documentée dans un message s'affichant en anglais uniquement. Restrictions concernant les pilotes DB2 Universal type 2 et type 4 Dans la version 8.2, les utilisateurs peuvent se connecter à une base de données DB2 Universal Database (UDB) à partir du Centre de développement à l'aide des pilotes DB2 Universal type 2 et type 4. Toutefois, si vous essayez d'utiliser un de ces pilotes pour vous connecter à un serveur iSeries ou à un serveur DB2 UDB version 8.1 ou d'une version précédente, le message d'erreur suivant apparaît : Connection to failed. IBM DB2 Universal driver (JCC) not found. Reportez-vous à la rubrique "Pilotes JDBC" du Centre de documentation de DB2 pour plus de détails sur les pilotes à utiliser pour éviter cette erreur. Outils d'interface graphique Modification du caractère de fin de l'instruction A partir du FixPack 1 de DB2 Universal Database (UDB) version 8.2 (équivalent de Version 8.1 FixPack 8), vous pouvez modifier le caractère de fin d'instruction dans un script exécuté dans le processeur de ligne de commande (CLP) ou l'éditeur de commande. Cette modification au fil de l'eau est semblable à la méthode disponible dans DB2 UDB pour OS/390. L'exemple suivant montre comment le caractère de fin peut être modifié après chaque instruction : connect to gilroy user newton using password; select * from newton.department; --#SET TERMINATOR : select * from newton.employee: --#SET TERMINATOR @ select * from newton.department@ --#SET TERMINATOR ; select * from newton.department; --#SET TERMINATOR & terminate& Le possibilité de modifier le caractère de fin est importante si un script contient des instructions composées. Dans l'exemple suivant, DB2 UDB considère que le premier point-virgule (;) de l'instruction composée CREATE TRIGGER est le caractère de fin de l'ensemble de l'instruction CREATE TRIGGER. Or, ce n'est pas le cas, car il s'agit du caractère de fin de l'une des instructions de l'instruction composée CREATE TRIGGER. CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END; CONNECT RESET; TERMINATE; L'exemple suivant indique comment le caractère de fin peut être modifié dans le script pour aboutir aux résultats escomptés : CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; --#SET TERMINATOR @ CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END@ --#SET TERMINATOR ; CONNECT RESET; S'il n'est pas nécessaire que vos scripts s'exécutent localement sur DB2 pour OS/390 ou si vos scripts DB2 UDB ne se connectent pas à OS/390, il n'est pas recommandé d'utiliser --#SET TERMINATOR pour modifier les caractères de fin de l'instruction. Utilisez plutôt les options -tdX ou ;-- existantes. L'option -tdX permet de spécifier le caractère de fin lors de l'appel d'un script à l'aide d'une commande CLP. 'X' correspond au caractère de fin d'instruction utilisé. Par exemple, dans la commande suivante : db2 -tvf test.txt -td& Le caractère & sera utilisé comme caractère de fin d'instruction lors de l'exécution du script dans le fichier test.txt. Si ce script contenait l'instruction composée CREATE TRIGGER, il se présenterait ainsi : CONNECT TO SAMPLE& DROP TRIGGER newton.NWTTRIGGER& CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END& CONNECT RESET& TERMINATE& Remarque : L'option -tdX n'est pas disponible dans l'éditeur de commande. Le script contenant l'instruction composée CREATE TRIGGER peut être réécrit comme suit, à l'aide de l'option ;-- : CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0');-- insert into newton.nwttable values( -1, '-1');-- END; CONNECT RESET; TERMINATE; Etat de base de données indisponibles dans la fenêtre de détails de la base de données du Centre de contrôle Vous pouvez utiliser la fenêtre de détails du Centre de contrôle pour voir des informations sur vos bases de données. La sélection d'une base de données dans l'arborescence ou le panneau de contenu permet d'afficher un résumé de son état. Dans certains cas, les informations de base de données peuvent ne pas être disponibles. Les raisons possibles de cette situation sont décrites ci-après. Tableau 36. Raison de l'indisponibilité de l'état des bases de données +--------------------+------------------------------------------------+ | Elément d'état de | Raisons possibles pour l'état | | la base de données | d'indisponibilité | +--------------------+------------------------------------------------+ | dernière | * Aucune sauvegarde n'a été effectuée pour la | | sauvegarde | base de données. | | | * L'utilisateur ne dispose pas des droits | | | appropriés pour accéder à ces informations. | +--------------------+------------------------------------------------+ | Taille | * La base de données est antérieure à la | | | version 8.2. | | | * L'utilisateur ne dispose pas des droits | | | appropriés pour accéder à ces informations. | +--------------------+------------------------------------------------+ | Capacité | * La base de données est antérieure à la | | | version 8.2. | | | * La base de données a plusieurs partitions. | | | * L'utilisateur ne dispose pas des droits | | | appropriés pour accéder à ces informations. | +--------------------+------------------------------------------------+ | Santé | * Le moniteur de santé n'est pas activé. | | | * Retard. Il y a un délai de 5 minutes à | | | partir du moment oà la base de données est | | | activée jusqu'à ce que l'état de santé soit | | | disponible. | +--------------------+------------------------------------------------+ | Maintenance | * La base de données est antérieure à la | | | version 8.2. | +--------------------+------------------------------------------------+ Ecriture par défaut dans la table (Création du moniteur d'événements) Un bouton Générer a été ajouté à la boîte de dialogue des options de sortie, lancée à partir de la fenêtre de création du moniteur d'événements. Le fait de cliquer sur ce bouton permet de générer l'option par défaut écrire dans la sortie de table. Cette sortie équivaut à la syntaxe générée par la commande db2evtbl. L'option générée indique l'utilisateur auquel les tables et éléments de données seront ajoutés lors de la création du moniteur d'événements. Les utilisateurs peuvent modifier la commande pour satisfaire leurs besoins. La syntaxe générée est basée sur le nom du moniteur d'événements et les types d'événements spécifiés dans la fenêtre de création de moniteur d'événement. Spécifiez le nom et types du moniteur d'événements avant de générer la syntaxe. Si le moniteur d'événement ou les types d'événements changent après la génération de l'option de sortie, un message vous rappelle de régénérer l'option de sortie avant de créer le moniteur d'événements. Si l'option de sortie n'est pas régénérée, les tables d'événements seront générées sur le nom de moniteur d'événements précédemment spécifié. Centre de gestion des catalogues d'informations Scripts de configuration - exemples Les scripts ICCConfig.jacl et ICCConfig.properties sont fournis à titre d'exemple avec le Centre de gestion des catalogues d'informations pour le Web avec le serveur d'applications intégré de DB2. Vous pouvez utiliser ces scripts exemples pour configurer le Centre de gestion des catalogues d'informations pour le Web avec WebSphere Application Server 5. Ces scripts sont situés dans le répertoire sqllib\samples\icweb. Configuration du serveur Web Lors de la configuration du Centre de gestion des catalogues d'informations pour le Web avec le serveur d'applications intégré de DB2, si vos métadonnées contiennent des URL pour accéder aux fichiers du serveur, vous devez mapper ces URL vers l'emplacement correct à l'aide d'alias dans la configuration du serveur Web. Vous devez également mapper les liens d'aide et de copyright. Si vous utilisez le serveur d'applications intégré de DB2, un serveur Web doit être configuré correctement et s'exécuter pour que ces liens fonctionnent même si vous n'avez pas besoin de vous connecter à un serveur Web. Installation et configuration - Informations complémentaires Fichier de configuration de noeud DB2 - db2nodes.cfg Le paramêtre resourcesetname est uniquement pris en charge sous AIX, HP-UX, Solaris et Linux. Dans les systèmes d'exploitation Linux, la colonne resourcesetname définit un nombre qui correspond à un noeud NUMA (accès mémoire non uniforme) sur le système. L'utilitaire système numactl doit être disponible en plus d'un noyau 2.6 avec prise en charge des règles NUMA. Consultez la page man pour numact1 pour obtenir plus d'informations concernant la prise en charge NUMA sur des systèmes d'exploitation Linux. Exemple d'utilisation de resourcesetname sur des systèmes d'exploitation Linux Cet exemple vous présente le paramétrage d'un ordinateur NUMA à quatre noeuds, chaque noeud logique étant associé à un noeud NUMA. Procédure 1. Assurez-vous que votre système dispose des fonctionnalités NUMA. 2. Puis lancez la commande suivante : $ numactl --hardware Des résultats semblables à ce qui suit s'affichent : available: 4 nodes (0-3) node 0 size: 1901 MB node 0 free: 1457 MB node 1 size: 1910 MB node 1 free: 1841 MB node 2 size: 1910 MB node 2 free: 1851 MB node 3 size: 1905 MB node 3 free: 1796 MB 3. Dans cet exemple, le système comporte quatre noeuds NUMA. Modifiez le fichier db2nodes.cfg comme suit afin d'associer chaque noeud logique multiple (MLN) à un noeud NUMA du système : 0 nomhôte 0 nomhôte 0 1 nomhôte 1 nomhôte 1 2 nomhôte 2 nomhôte 2 3 nomhôte 3 nomhôte 3 Variable de registre DB2NOLIOAIO remplacée par DB2LINUXAIO (Linux) L'utilisation de la variable de registre DB2NOLIOAIO est déconseillée à partir de la version 8.2.2 (équivalente de la version 8.1, FixPak 9) de DB2 Universal Database (UDB) . Pour les utilisateurs Linux, la variable de registre DB2NOLIOAIO a été remplacée par DB2LINUXAIO. * Pour activer la prise en charge d'E-S en mode asynchrone (AIO) sous Linux, exécutez la commande suivante : db2set DB2LINUXAIO=true et redémarrez DB2 UDB. Remarque : Pour pouvoir utiliser AIO, les utilisateurs doivent installer libaio-0.3.98 ou une version ultérieure et disposer d'un noyau prenant en charge AIO. * Pour désactiver la prise en charge du mode asynchrone (AIO) sous Linux, exécutez la commande suivante : db2set DB2LINUXAIO=false et redémarrez DB2 UDB. Serveur d'applications pour DB2 UDB Le serveur d'applications pour DB2 Universal Database (UDB) ne prend plus en charge l'administration distante et les procédures mémorisées. Les rubriques mises à jour sont les suivantes : Activation du serveur d'applications pour DB2 UDB L'activation de la base de données entraîne : * la connexion à une base de données spécifiée, * la création et le peuplement des tables de métadonnées, * la mise à jour des paramêtres DBM CFG, JDK_PATH et JAVA_HEAP_SZ, * installe l'application des services Web de DB2. Condition préalable Sous Linux, après l'installation du serveur d'applications et avant son activation, vous devez configurer l'environnement Java de Linux. Voir le manuel Application Development Guide: Building and Running Applications pour plus de détails sur la configuration de l'environnement Java de Linux. Procédure Pour activer le serveur d'applications pour DB2 UDB, procédez comme suit : 1. Connectez-vous au serveur DB2 en tant qu'utilisateur root sur les systèmes d'exploitation Linux ou UNIX ou en tant qu'utilisateur doté des droits Administrator sur les systèmes d'exploitation Windows. 2. Pour les systèmes d'exploitation basés sur Linux- et UNIX-, exécutez la commande suivante : . /chemin_instancedb2/sqllib/db2profile chemin_instancedb2 étant l'emplacement où l'instance DB2 UDB a été créée. 3. Exécutez l'une des commandes suivantes : * Pour les systèmes d'exploitation Linux et UNIX : chemin_install_ServeurApp/bin/enable.sh -db alias_bdd -user utilisateur_bdd -password mot_de_passe_bdd -db2path chemin_sqllib -instance nom_instance -easpath chemin_sai -fencedid id_utilisateur_isolé * Pour les systèmes d'exploitation Windows : chemin_install_serveurApp\bin\enable -db alias_bdd -user utilisateur_bdd -password mot_de_passe_bdd -db2path chemin_sqllib -instance nom_instance -easpath chemin_sai où : * alias_bdd est l'alias de la base de données à activer, * utilisateur_bdd est l'ID utilisateur à employer lors de la connexion à la base de données, * mot_de_passe_bdd est le mot de passe à employer avec l'ID utilisateur lors de la connexion à la base de données, * chemin_sqllib est le chemin du répertoire SQLLIB de l'instance DB2 UDB. Ce chemin est utilisé pour la mise à jour de DB2EAS à l'aide des fichiers JAR requis, * nom_instance est le nom d'une instance DB2 UDB, * chemin_sai est le chemin du serveur d'applications intégré, * id_utilisateur_isolé est l'ID de l'utilisateur isolé. Une fois le serveur d'applications pour DB2 activé, il démarre automatiquement. Démarrage du serveur d'applications pour DB2 UDB en local Le serveur d'applications doit être démarré à l'aide de l'ID utilisateur isolé pour les systèmes créant des services Web dans un environnement .NET ou en exécutant uniquement le registre de métadonnées XML. Démarrage à distance du serveur d'applications pour DB2 UDB La section est supprimée. Le serveur d'applications pour DB2 UDB ne prend plus en charge l'administration distante. arrêt du serveur d'applications pour DB2 UDB en local Le serveur d'applications doit être arrêté à l'aide de l'ID utilisateur isolé pour les systèmes créant des services Web dans un environnement .NET ou en exécutant uniquement le registre de métadonnées XML. arrêt à distance du serveur d'applications pour DB2 UDB La section est supprimée. Le serveur d'applications pour DB2 UDB ne prend plus en charge l'administration distante. Désinstallation du serveur d'applications pour DB2 UDB La section est supprimée. Le serveur d'applications pour DB2 UDB ne prend plus en charge l'administration distante. Activation du serveur d'applications intégré DB2 La base de données activée d'un serveur d'applications intégré DB2 doit être située dans une instance 32 bits. Toutes les bases de données auxquelles on accède à partir du serveur d'applications intégré DB2 peuvent être situées dans des instances 32 bits et 64 bits. Déploiement des outils Web DB2 Les serveurs d'applications utilisant JDK 1.4 ne nécessitent plus de personnalisation de la variable CLASSPATH pendant le déploiement d'outils Web DB2. Toutes les dépendances, y compris les dépendances de l'analyseur XML, sont maintenant déployées avec le module Web et sont chargées à partir du répertoire WEB-INF\lib en fonction des spécifications J2EE. Cette modification affecte deux rubriques d'information : * Déploiement des outils Web DB2 sur des serveurs d'applications WebLogic * Déploiement des outils Web DB2 sur d'autres serveurs d'applications Les rubriques mises à jour sont les suivantes : Déploiement des outils Web DB2 sur des serveurs d'applications WebLogic Cette tâche décrit la procédure de déploiement et de configuration des outils Web DB2 (dont le Centre de commande Web et le Centre de santé Web) sur BEA WebLogic 7.0. Ces outils s'exécutent comme des applications Web sur un serveur Web pour permettre d'accéder aux serveurs DB2 à l'aide des navigateurs Web. Conditions préalables Avant d'installer les outils Web DB2 sur WebSphere, vérifiez que vous disposez des éléments suivants : * un serveur d'applications BEA WebLogic 7.0 ; * IBM DB2 Administration Client version 8. * Navigateur Web compatible avec HTML 4.0. Remarque : Les outils Web DB2 ont été testés sur Netscape 4.x, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Internet Explorer 5.x, Opera 6.x, Konqueror 3.x (Linux) et EudoraWeb 2.x (SE Palm). L'utilisation de certains navigateurs Web n'ayant pas été testés peut nécessiter l'ajout d'une référence explicite à la configuration du servlet. Restrictions Les restrictions ci-après s'appliquent au déploiement des outils Web DB2 : * Les conversions en langues et pages de codes multiples entre les serveurs de niveau intermédiaire et les serveurs DB2 ne sont pas prises en charge. Bien que la langue du serveur soit celle affichée, il se peut que certains caractères s'affichent incorrectement. * Afin de visualiser les alertes du centre de santé pour les bases de données, les espaces table et les conteneurs d'espace table dans le Centre de santé Web, vous devez vous assurer que les bases de données sont cataloguées sur le serveur d'applications Web. * Les boutons du navigateur Web (arrêter, Précédente, Historique) ne peuvent pas être utilisés avec les outils Web DB2. * Si vous utilisez Netscape Navigator 4 avec les outils Web DB2, il se peut que l'affichage de votre navigateur ne se régénère pas correctement. Si cela se produit, vous pouvez le régénérer en réduisant la fenêtre, puis en l'agrandissant. Vous pouvez également régénérer l'affichage en masquant la fenêtre du navigateur sous une autre fenêtre, puis en la ramenant ensuite à l'avant-plan. * Pour affecter votre alias à un système, un noeud d'instance ou une base de données DB2 Universal Database (UDB), vous devez le cataloguer explicitement sur le serveur d'applications via l'Assistant de configuration DB2 ou le Centre de contrôle DB2. * Le premier démarrage des outils Web DB2 sera beaucoup plus long que les démarrages suivants. Ceci est principalement dû au processus de catalogage automatique. Si vous ne voulez pas utiliser la fonctionnalité de catalogage automatique, vous pouvez raccourcir la délai d'attente en la désactivant via la configuration du servlet. Remarque : Les paramêtres de configuration du servlet figurent dans le fichier descripteur de déploiement web.xml. Les noms de paramêtres et les valeurs par défaut peuvent être modifiés à chaque édition. Certains serveurs d'applications peuvent autoriser des modifications de ces paramêtres, via leur interface ou l'édition directe du fichier web.xml. * La taille maximale absolue du tampon de sortie (résultats) est de 1 Mo dans le cas de l'utilisation d'un navigateur de station de travail ou de portable, même si sa configuration est supérieure. Dans le cas de navigateurs Web PDA, cette taille est de 1 ko. * Sous Linux, UNIX, et Windows, les outils Web DB2 détectent et cataloguent automatiquement les systèmes figurant sur le même réseau TCP/IP que le serveur d'applications. L'adresse IP de ces systèmes commence par les mêmes trois chiffres. Les outils tentent de cataloguer les noeuds système DB2 via le nom d'hôte TCP/IP éloigné d'origine. En cas de nom en double, les outils affectent un nom aléatoire unique. Vous devez cataloguer explicitement les autres serveurs d'administration DB2 sur le serveur d'applications si vous voulez qu'ils soient accessibles. Il s'agit des serveurs utilisant TCP/IP ne se trouvant pas sur le même réseau TCP/IP que le serveur d'applications, ainsi que ceux qui ne font pas appel à TCP/IP. * Sous Linux, UNIX, et Windows, les outils Web DB2 tentent de détecter et de cataloguer automatiquement les noeuds et bases de données d'instance DB2 UDB résidant sur les systèmes catalogués DB2 UDB. Il est possible de configurer une instance éloignée pour plusieurs protocoles de communication, par conséquent, le catalogue contiendra une entrée de noeud distincte pour chaque protocole pris en charge par une instance cataloguée automatiquement. En cas de nom en double, les outils affectent un nom aléatoire unique. Procédure Pour installer les outils Web DB2 sur des serveurs d'applications WebLogic : 1. A partir de la console d'administration WebLogic, déployez les outils Web DB2 en procédant comme suit : a. Démarrez la console d'administration WebLogic. b. Cliquez sur domain -> deployments -> Web Applications dans la sous-fenêtre de gauche. c. Cliquez sur le lien Configure a new Web Application pour installer l'application Web DB2 Web Tools. d. Dans la liste du système de fichiers, localisez le fichier Sqllib\tools\web\db2wa.war. e. Cliquez sur select sous le nom de fichier db2wa.war. f. Dans la liste des serveurs disponibles, sélectionnez celui qui doit héberger DB2 Web Tools, puis cliquez sur la flêche pour le faire passer dans la liste des serveurs cibles. Remarque : Vous devez conserver le nom d'origine db2wa, car celui-ci est défini dans le code de l'application DB2 Web Tools. g. Cliquez sur Configure and Deploy. h. Patientez pendant que le serveur d'applications régénère l'état du processus de déploiement de l'application Web sur le serveur sélectionné. Si le déploiement aboutit, l'état suivant s'affiche : Deployed=true. 2. Appelez l'application Web DB2 Web Tools située à l'adresse : http://nom-serveur:numéro-port-serveur-app/db2wa Par exemple : http://nom-serveur:7001/db2wa. Déploiement des outils Web DB2 sur d'autres serveurs d'applications Cette tâche décrit la procédure de déploiement et de configuration des outils Web DB2 (dont le Centre de commande Web et le Centre de santé Web) sur d'autres serveurs d'applications, tels Tomcat 4.0 et Macromedia JRun 4.0. Ces outils s'exécutent comme des applications Web sur un serveur Web pour permettre d'accéder aux serveurs DB2 à l'aide des navigateurs Web. Conditions préalables Avant d'installer les outils Web DB2, vérifiez que vous disposez des éléments suivants : * un serveur d'applications, par exemple : * Tomcat 4.0 Servlet/JSP Container (http://jakarta.apache.org/tomcat/) * Macromedia JRun 4.0 ; * IBM DB2 Administration Client version 8. * Navigateur Web compatible avec HTML 4.0. Restrictions Les restrictions ci-après s'appliquent au déploiement des outils Web DB2 : * Les conversions en langues et pages de codes multiples entre les serveurs de niveau intermédiaire et les serveurs DB2 ne sont pas prises en charge. Bien que la langue du serveur soit celle affichée, il se peut que certains caractères s'affichent incorrectement. * Afin de visualiser les alertes du centre de santé pour les bases de données, les espaces table et les conteneurs d'espace table dans le Centre de santé Web, vous devez vous assurer que les bases de données sont cataloguées sur le serveur d'applications Web. * Les boutons du navigateur Web (arrêter, Précédente, Historique) ne peuvent pas être utilisés avec les outils Web DB2. * Si vous utilisez Netscape Navigator 4 avec les outils Web DB2, il se peut que l'affichage de votre navigateur ne se régénère pas correctement. Si cela se produit, vous pouvez le régénérer en réduisant la fenêtre, puis en l'agrandissant. Vous pouvez également régénérer l'affichage en masquant la fenêtre du navigateur sous une autre fenêtre, puis en la ramenant ensuite à l'avant-plan. * Pour affecter votre alias à un système, un noeud d'instance ou une base de données DB2 UDB, vous devez le cataloguer explicitement sur le serveur d'applications via l'Assistant de configuration DB2 ou le Centre de contrôle DB2. * Le premier démarrage des outils Web DB2 sera beaucoup plus long que les démarrages suivants. Ceci est principalement dû au processus de catalogage automatique. Si vous ne voulez pas utiliser la fonctionnalité de catalogage automatique, vous pouvez raccourcir la délai d'attente en la désactivant via la configuration du servlet. Remarque : Les paramêtres de configuration du servlet figurent dans le fichier descripteur de déploiement web.xml. Les noms de paramêtres et les valeurs par défaut peuvent être modifiés à chaque édition. Certains serveurs d'applications peuvent autoriser des modifications de ces paramêtres, via leur interface ou l'édition directe du fichier web.xml. * La taille maximale absolue du tampon de sortie (résultats) est de 1 Mo dans le cas de l'utilisation d'un navigateur de station de travail ou de portable, même si sa configuration est supérieure. Dans le cas de navigateurs Web PDA, cette taille est de 1 ko. * Sous Linux, UNIX, et Windows, les outils Web DB2 détectent et cataloguent automatiquement les systèmes figurant sur le même réseau TCP/IP que le serveur d'applications. L'adresse IP de ces systèmes commence par les mêmes trois chiffres. Les outils tentent de cataloguer les noeuds système DB2 via le nom d'hôte TCP/IP éloigné d'origine. En cas de nom en double, les outils affectent un nom aléatoire unique. Vous devez cataloguer explicitement les autres serveurs d'administration DB2 sur le serveur d'applications si vous voulez qu'ils soient accessibles. Il s'agit des serveurs utilisant TCP/IP ne se trouvant pas sur le même réseau TCP/IP que le serveur d'applications, ainsi que ceux qui ne font pas appel à TCP/IP. * Sous Linux, UNIX, et Windows, les outils Web DB2 tentent de détecter et de cataloguer automatiquement les noeuds et bases de données d'instance DB2 UDB résidant sur les systèmes catalogués DB2 UDB. Il est possible de configurer une instance éloignée pour plusieurs protocoles de communication, par conséquent, le catalogue contiendra une entrée de noeud distincte pour chaque protocole pris en charge par une instance cataloguée automatiquement. En cas de nom en double, les outils affectent un nom aléatoire unique. Procédure Les procédures d'installation des outils Web DB2 sur des serveurs d'applications tels Tomcat 4.0 ou Macromedia JRun 4.0 sont les suivantes : Tomcat 4.0 1. Préparez le fichier de configuration Tomcat 4.0 (CLASSPATH) en procédant comme suit : a. Créez la variable d'environnement/système CATALINA_HOME qui doit contenir le chemin d'accès à Tomcat 4.0 (répertoire principal). Par exemple, D:\jakarta-tomcat-4.0.3. b. Vérifiez que Tomcat Servlet/JSP Container est opérationnel : 1) Démarrez Tomcat. Pour ce faire, exécutez startup.bat à partir du répertoire bin de Tomcat. 2) Affichez la page Web principale http://hôtelocal:8080/ dans un navigateur Web. 2. Déployez les outils Web DB2 dans Tomcat Servlet/JSP Container. Pour ce faire, localisez le chemin d'installation des outils Web DB2 (Sqllib\tools\web\db2wa.war ) et copiez db2wa.war dans le répertoire de déploiement de Tomcat (répertoire webapps de Tomcat). 3. Appelez les outils Web DB2 sur Tomcat Servlet/JSP Container en procédant comme suit : a. Ouvrez une fenêtre de commande DB2 et indiquez le répertoire bin de Tomcat. b. Démarrez Tomcat à l'aide de startup.bat et vérifiez qu'un nouveau répertoire (db2wa) a été ajouté dans le répertoire webapps. Remarque : L'exécution de startup.bat à partir d'une fenêtre d'invite ne permet pas de définir DB2PATH. Pour ce faire, la ligne CLASSPATH doit être modifiée pour faire explicitement référence au chemin d'installation de DB2 UDB, et non à la variable d'environnement %DB2PATH%. c. L'application d'entreprise DB2 Web Tools se trouve à l'adresse http://localhost:8080/db2wa, elle est accessible à l'aide du navigateur Web compatible avec HTML 4.0. JRun 1. Préparez un nouveau serveur d'applications pour les outils Web DB2 en procédant comme suit : Recommandation La création d'un serveur d'applications est recommandée, mais n'est pas obligatoire. Le serveur par défaut peut être utilisé à des fins de tests et, dans ce cas, seule la configuration du chemin de classe JVM et du répertoire de déploiement est obligatoire. a. Démarrez la console de gestion JRun (JRun Management Console) et connectez-vous sous l'ID administrateur du serveur d'applications. b. Créez un serveur d'applications à l'aide de l'option de création de serveur située dans la partie supérieure droite de la page principale. Ne modifiez pas le nom d'hôte affiché (hôtelocal). c. Indiquez le nouveau nom de serveur (DB2WebToolsServer) et cliquez sur le répertoire du serveur JRun. La valeur de paramêtre est automatiquement remplie. d. Cliquez sur le bouton de création de serveur. e. Enregistrez les valeurs générées ou indiquez des nouvelles valeurs pour les paramêtres suivants : * adresse URL du fournisseur JNDI ; * numéro de port du serveur Web. Il s'agit de la valeur à utiliser dans l'adresse URL des outils Web DB2 (http://localhost:numéro_port_serveur_Web/db2wa) * numéro de port du mandataire du connecteur Web. f. Cliquez si nécessaire sur l'option de mise à jour des numéros de port et fermez la fenêtre. 2. Déployez les outils Web DB2 sur le serveur d'applications JRun en procédant comme suit : a. Démarrez le serveur d'applications qui doit héberger l'application Web DB2 Web Tools (DB2WebToolsServer, par défaut, ou tout autre serveur à l'exception du serveur d'administration). b. Cliquez sur Applications Web, puis sur Ajout. c. Parcourez la section Fichier de déploiement pour sélectionner le fichier Sqllib\tools\web\db2wa.war dans le chemin d'installation de DB2 UDB. d. Cliquez sur Déployer et vérifiez que le chemin du contexte est /db2wa. e. Sélectionnez le serveur d'applications et vérifiez que l'application DB2 Web Tools apparaît dans la section Applications Web. Ne cliquez pas sur Validation sur cette page. f. Sélectionnez le lien Accueil situé sur le panneau supérieur gauche de la page principale. g. Redémarrez le serveur d'applications à partir de la vue Accueil qui contient les outils Web DB2 (DB2WebToolsServer). L'application d'entreprise DB2 Web Tools se trouve à l'adresse http://localhost:numéro_port_serveur_web/db2wa, accessible à l'aide d'un navigateur Web compatible avec HTML 4.0. E-S directes sur les unités de blocs (Linux) Les E-S directes sont désormais prises en charge sur les systèmes de fichiers et les unités de blocs pour les distributions de Linux avec un noyau 2.6. Les E-S directes sur les unités de blocs représentent une alternative pour spécifier des conteneurs d'unité pour l'accès disque direct ou pour les E-S brutes. Les performances des E-S directes sont équivalentes à la méthode d'unité de caractères bruts. DB2 Universal Database (UDB) permet les E-S directes pendant l'ouverture de l'espace table lorsque l'instruction CREATE TABLESPACE spécifie un nom d'unité de bloc pour le chemin du conteneur. Les mêmes performances étaient atteintes à l'aide de la méthode d'E-S brute, par la définition d'accès de l'unité de blocs vers l'unité de caractères à l'aide de l'utilitaire raw. Tableau 37. Comparaison d'E-S directes et brutes +----------------------------------+----------------------------------+ | E-S brutes utilisant une unité | E-S brutes utilisant un pilote | | par bloc avec des E-S en accès | d'unité par caractère et un | | direct (nouvelle méthode) | utilitaire brut (ancienne | | | méthode) | +----------------------------------+----------------------------------+ | CREATE TABLESPACE dms1 | CREATE TABLESPACE dms1 | | MANAGED BY DATABASE | MANAGED BY DATABASE | | USING (DEVICE '/dev/sda5' | USING (DEVICE '/dev/raw/raw1' | | 11170736) | 11170736) | +----------------------------------+----------------------------------+ Bien que DB2 UDB prenne toujours en charge la méthode d'utilisation de l'utilitaire brut pour les E-S brutes, cette méthode devient dépassée dans les distributions récentes et risque d'être supprimée dans le futur. Nous vous conseillons d'utiliser la nouvelle méthode qui consiste à indiquer directement un périphérique. Recommandation Si vous voulez exploiter des accès disque directs, créez vos conteneurs d'unités DMS à l'aide d'E-S directes pour éviter tout problème de migration. Remarque : Les E-S directes ne sont pas prises en charge par DB2 UDB sur Linux/390. Démon du Centre de documentation DB2 (Linux et UNIX) Le démon du Centre de documentation DB2 est responsable du contrôle du serveur de documentation DB2. Le démon, qui fait partie de l'installation du Centre de documentation DB2, est composé de deux fichiers : * db2icd - script d'initialisation * db2ic.conf - fichier de configuration Ces fichiers sont installés aux emplacements suivants : AIX /etc/db2icd /var/db2/v81/db2ic.conf HP /sbin/init.d/db2icd /var/opt/db2/v81/db2ic.conf Environnement d'exploitation Solaris /etc/init.d/db2icd /var/db2/v81/db2ic.conf Linux /etc/init.d/db2icd /var/db2/v81/db2ic.conf Démarrage ou arrêt du démon du Centre de documentation (AIX, environnement d'exploitation Solaris, HP, Linux) Vous n'avez à démarrer ou arrêter le démon manuellement que lorsque vous voulez changer les variables de configuration du démon. Normalement, le démon est lancé au démarrage du système, en fonction des niveaux d'exécution créés pendant l'installation du Centre de documentation DB2. Procédure Pour arrêter et démarrer le démon du Centre de documentation : 1. arrêtes le démon s'il est en cours d'exécution. Sur une ligne de commande, entrez : INIT_DIR/db2icd stop où INIT_DIR représente le répertoire d'installation du fichier db2icd. 2. Changez toutes les variables pour le démon en éditant le fichier db2ic.conf. Actuellement, vous pouvez modifier le numéro de port TCP oà la documentation est disponible et l'emplacement de l'espace de travail temporaire utilisé par le démon en cours d'exécution. 3. Démarrez le démon. Sur une ligne de commande, entrez : INIT_DIR/db2icd start où INIT_DIR représente le répertoire d'installation du fichier db2icd. Lorsque le démon démarre, il utilise les nouvelles variables d'environnement. Il existe également une option pour arrêter et redémarrer le démon immédiatement. Sur une ligne de commande, entrez : INIT_DIR/db2icd restart où INIT_DIR représente le répertoire d'installation du fichier db2icd. Vous pouvez vérifier l'état du démon à n'importe quel moment. Sur une ligne de commande, entrez : INIT_DIR/db2icd status où INIT_DIR représente le répertoire d'installation du fichier db2icd.Le démon renvoie l'état actuel et affiche l'ID de processus du démon s'il est actif. Mots clés des fichiers réponses et fichiers modèles Pour installer le Centre de documentation de DB2 Version 8.2 à l'aide d'un fichier réponses, utilisez les informations suivantes : Mot clé du fichier réponses (PROD) INFORMATION_CENTER Nom du fichier réponses db2doce.rsp Codes d'erreur de l'installation au moyen d'un fichier réponses Le code d'erreur suivant ne concerne que Windows et n'est pas applicable à Linux et UNIX. 3010 L'installation a abouti mais il faut redémarrer le système pour terminer l'installation. Comptes utilisateur requis pour l'installation de serveurs DB2 (Windows) Augmenter les quotas Le droit utilisateur Augmenter les quotas a été remplacé par Ajuster les quotas de mémoire pour un processus sous Windows XP et Windows Server 2003. Droits utilisateur octroyés par le programme d'installation de DB2 pour le débogage de programmes Le programme d'installation de DB2 n'octroie pas le droit utilisateur de débogage. Il octroie les droits utilisateur suivants : * Agir en tant que partie du système d'exploitation * Créer un jeton * Verrouiller les pages dans la mémoire * Se connecter en tant que service * Augmenter les quotas * Remplacer un jeton de niveau de processus Prise en charge d'E-S asynchrones (Linux) La prise en charge des E/S asynchrones (AIO) est désormais disponible sous Linux (noyau 2.6 et certains noyaux 2.4) pour les unités par caractère et les systèmes de fichiers O_DIRECT. AIO améliorer les performances des pages. Vous pouvez activer et désactiver AIO sous Linux en émettant la commande db2set. Pour utiliser AIO, les utilisateurs doivent installer libaio-0.3.98 ou ultérieur et avoir un kernel prenant en charge AIO. Les utilisateurs doivent également exécuter la commande db2set DB2LINUXAIO=true et redémarrer DB2 Universal Database. Modification de la commande db2ln pour créer des liens de bibliothèques DB2 UDB 64 bits (Linux et UNIX) Dans les précédents niveaux de DB2 Universal Database (UDB) version 8, la commande db2ln créait certains liens DB2 sous /usr/lib et /usr/include. Sur les plateformes qui prennent en charge des instances DB2 UDB 32 bits et 64 bits, ces liens désignent des fichiers de bibliothèque ou incluent des fichiers sous DB2DIR/lib64 ou DB2DIR/include64 par défaut, DB2DIR étant le répertoire dans lequel DB2 UDB version 8 est installé. Si la valeur par défaut n'est pas souhaitée, vous pouvez spécifier la largeur de bit en exécutant la commande db2ln avec le marqueur -w : db2ln -w 32|64 Ceci évite la coexistence d'instances 32 bits et d'instances 64 bits DB2 UDB sur certaines plateformes. A partir de DB2 UDB version 8.2, la commande db2ln crée des liens de bibliothèque DB2 64 bits sur ces plateformes, dans des répertoires appropriés. Dans ce cas, le marqueur -w ne sert qu'à remplir /usr/include. Lorsque la commande db2ln crée des liens pour les fichiers de bibliothèque DB2 UDB, des liens 32 bits et 64 bits sont créés sur les plateformes prises en charge. Ceci permet la coexistence et l'exécution simultanées d'instances 32 bits et d'instances 64 bits. Sur certaines distributions Linux, le rpm de développement libc est fourni avec la bibliothèque /usr/lib/libdb2.so ou /usr/lib64/libdb2.so. Cette bibliothèque est utilisée pour l'implémentation de la BD Berkeley de Sleepycat Software et n'est pas associée à DB2 UDB d'IBM. Toutefois, ce fichier empêche le fonctionnement des commandes db2ln et db2rmln. La commande db2ln n'écrase pas le fichier et db2rmln ne le supprime pas. Dans ce cas, pour compiler les applications à l'aide de DB2 UDB, les processus de compilation et de liaison doivent respectivement indiquer un chemin d'accès absolu aux en-têtes et aux bibliothèques de DB2 UDB. Cette méthode est recommandée car elle permet la compilation et la liaison sur plusieurs éditions de DB2 UDB installées sur un même ordinateur. Voir le manuel d'installation et de configuration deDB2 UDB version 8.2 pour plus de détails sur les restrictions relatives à l'utilisation de la commande db2ln. Query Patroller mise à jour du comportement de classe de requête Un message d'avertissement est renvoyé lorsque l'une des tâches ci-après est effectuée via Query Patroller Center ou à partir de la ligne de commande Query Patroller : * Ajout d'une classe de requête * Suppression d'une classe de requête * mise à jour du coùt maximal d'une requête pour une classe de requête Le message d'avertissement est le suivant : DQP1024W La création, la modification ou la suppression d'une classe de requêtes ne sera prise en compte que lorsque le serveur Query Patroller aura été redémarré. Parallèlement, la version 8.2 du manuel DB2 Query Patroller : Guide d'installation, d'administration et d'utilisation indique que vous devez redémarrer le serveur Query Patroller après avoir créé, modifié ou supprimé des classes de requêtes et ce, afin que vos modifications prennent effet. Le texte du message et celui figurant dans le guide ne sont plus exacts. Les trois tâches de classe de requête indiquées prendront effet immédiatement, à moins qu'il n'existe des requêtes en file d'attente ou en cours d'exécution. S'il existe des requêtes en file d'attente ou en cours d'exécution, y compris les requêtes nouvellement soumises, les modifications de classe de requête prendront effet lorsque les requêtes en file d'attente ou en cours d'exécution seront terminées. Si vous ne souhaitez pas attendre la fin de toutes les requêtes (en file d'attente et en cours d'exécution), vous devez redémarrer le serveur Query Patroller. Remarque : Comme dans les précédentes versions de Query Patroller, la mise à jour du nombre maximal de requêtes pour une classe de requête prend toujours effet immédiatement. mises à jour des définitions des états de requête gérés La signification des états de requête Canceled (Annulé) et Done (Terminé) est désormais la suivante : Annulé La requête a été annulée par l'intermédiaire du Centre Query Patroller ou de la ligne de commande Query Patroller, par l'administrateur, l'émetteur ou un opérateur dont le profil comporte le privilège MONITORING avec droit d'édition. On ne peut annuler que les requêtes running (en cours d'exécution), held (suspendues), released (libérées) et queued (en file d'attente). Terminé La requête a abouti. Remarque : Bien que la requête à proprement parler se soit terminée sans erreur, il se peut que l'application reçoive une erreur si son achèvement est le résultat d'un événement externe, tel qu'une application DB2 force. Création de tables Explain avant l'exécution du générateur de données historisées pour Query Patroller Lors de l'exécution du générateur de données historisées pour Query Patroller, si les tables Explain n'existent pas déjà, le générateur les créera. Il est cependant fortement recommandé de créer ces tables sur la même partition. Ceci permet d'améliorer les performances de la fonction Explain. Cette amélioration augmente les performances du générateur de données historisées. Vérification des fichiers journaux Query Patroller pour l'analyse historique Si la colonne Exécution d'un Explain du rapport d'activité des requêtes (analyse historique) affiche un statut Echec de l'exécution pour une requête, les données historiques n'ont pas été générées pour cette requête. La requête n'apparaîtra alors pas dans les rapports ou graphiques d'analyse historique. Comme décrit dans la version 8, vous pouvez examiner le fichier qpuser.log afin de déterminer la cause de l'échec de la requête. Outre ce fichier, vous devez examiner le fichier qpdiag.log. arrêt anormal du générateur de données historisées Si vous exécutez le générateur de données historisées et l'arrêtez d'une façon anormale, vous recevrez une erreur lorsque vous tenterez de l'exécuter à nouveau. Exemples d'arrêt anormal : * DB2 Universal Database s'arrête de façon inattendue * Lancement d'une commande db2stop force * Lancement d'une commande killdb2 Lorsque le générateur de données historisées s'arrête de façon anormale, vous devez lancer la commande suivante avant de tenter de le réexécuter : qp -d base de données generate historical_data stop où base de données identifie la base de données sur laquelle est lancée la commande. mises à jour des classes de requêtes dynamiques Certaines opérations sur les classes de requêtes ne nécessitent plus l'arrêt et le redémarrage de Query Patroller pour être prises en compte. Dans le tableau ci-après, une requête active est une requête dont l'état est En cours d'exécution ou Mis en file d'attente. Tableau 38. Conditions pour que les modifications des classes de requêtes soient prises en compte +----------------------------------+----------------------------------+ | Nature de la modification | Conditions pour que la | | | modification soit prise en | | | compte | +----------------------------------+----------------------------------+ | Ajout, retrait ou mise à jour | Si aucune requête n'est active, | | d'une classe de requêtes. | les modifications prennent effet | | | immédiatement. | +----------------------------------+----------------------------------+ | mise à jour d'une classe de | Prend effet immédiatement, même | | requêtes impliquant uniquement | s'il existe des requêtes | | une modification de la zone | actives. | | Nombre maximal de requêtes. | | +----------------------------------+----------------------------------+ | mise à jour d'une classe de | S'il existe des requêtes | | requêtes impliquant uniquement | actives, la mise à jour prend | | une modification de la zone Coùt | effet dans les cas suivants : | | maximal d'une requête. | * Query Patroller est arrêté et | | | redémarré. | | | * Il n'y a plus de requêtes | | | actives. | | | Remarque : Lorsqu'une | | | modification est en attente au | | | niveau du Coùt maximum d'une | | | requête, les mises à jour des | | | classes de requêtes ultérieures | | | ne seront prises en compte que | | | lorsque l'une des deux | | | conditions précédentes sera | | | satisfaite. | +----------------------------------+----------------------------------+ | Ajout ou retrait d'une classe de | S'il existe des requêtes | | requêtes. | actives, l'ajout ou le retrait | | | prend effet dans les cas | | | suivants : | | | * Query Patroller est arrêté et | | | redémarré. | | | * Il n'y a plus de requêtes | | | actives. | +----------------------------------+----------------------------------+ Comportement des requêtes imbriquées Les requêtes imbriquées ne peuvent pas être mises en file d'attente. Une requête de ce type s'exécutera immédiatement si elle dépasse un seuil qui entraînerait normalement sa mise en file d'attente. Limitations par type d'instruction SQL Contrairement aux informations fournies dans la documentation précédente, les requêtes contenant les instructions suivantes peuvent être mises en file d'attente : * requêtes contenant du SQL statique avec des variables hôte * requêtes contenant une fonction de valeur d'identité(IDENTITY_VAL_LOCAL) ou une fonction de valeur de classement telle que NEXT VALUE FOR ou PREVIOUS VALUE FOR Limitation de résolution à l'aide de Terminal Services Client Lors de l'utilisation de Terminal Services Client avec une résolution de 640x480 pour se connecter à une station distante exécutant le Centre Query Patroller, la fenêtre Préférences de soumissions peut être vide. Pour que l'affichage soit correct, utilisez une résolution supérieure à 640x480. Nouvelle prise en charge de groupes pour les soumissions de requêtes A partir de la version 8.2, DB2 Universal Database (UDB) prend en charge les groupes utilisateur au-delà des groupes du système d'exploitation. Par conséquent, il y a une légère différence dans la liste déroulante Profil de l'émétteur à utiliser dans la fenêtre Préférences de soumission de requêtes du Centre Query Patroller. Si vous êtes connecté, mais que vous ne disposez pas des droits DBADM ou Edition pour l'administration utilisateur Query Patroller, vous ne pouvez qu'ajouter ou mettre à jour une préférence de soumission pour vous-même. Dans ce cas, la liste déroulante Profil de l'émetteur à utiliser contiendra les profils émetteur existants des groupes DB2 UDB auxquels vous appartenez, et non uniquement les groupes du système d'exploitation auxquels vous appartenez. Si vous êtes connecté et que vous ne disposez pas des droits DBADM ou Edition pour l'administration utilisateur Query Patroller, vous pouvez ajouter ou mettre à jour une préférence de soumission pour les autres utilisateurs. Dans ce cas, la liste déroulant Profil de l'émetteur à utiliser contiendra toutes les profils d'émetteurs des groupes existants. Query Patroller - Limites de planification Lorsque vous travaillez avec des planifications dans le Centre Query Patroller, vous pouvez utiliser la fenêtre Planification pour enregistrer les planification dans un fichier et les importer ultérieurement. Si votre planification est enregistrée avec le FixPack 6 ou antérieur, vous ne pourrez pas l'importer à l'aide de la version 8.2 ou ultérieure. Cette limitation est due au changement de sérialisation entre les niveaux de JDK introduites avec DB2 UDB version 8.2. Autorisation requise pour utiliser la commande RUN IN BACKGROUND QUERY Pour exécuter la commande RUN IN BACKGROUND QUERY, vous devez être l'émetteur qui a soumis d'abord la requête. Création d'un alias pour une table de résultat Dans Query Patroller Version 8.1 FixPack 5, la création de tables de résultats dans le schéma qui correspondait à l'ID autorisation de l'émetteur de la requête était impossible. Query Patroller commençait par créer des tables de résultats dans un schéma DB2QPRT commun. Pour permettre aux tables de résultats d'être référencées à l'aide du schéma de l'émetteur, Query Patroller Version 8.2 introduit une option pour créer automatiquement un alias pour chaque nouvelle table de résultats créée par Query Patroller. La table de résultats est créée dans le schéma DB2QPRT et l'alias est créé dans un schéma correspondant à l'ID d'autorisation de l'émetteur. Pour activer/désactiver cette option, émettez la commande UPDATE QP_SYSTEM avec l'option CREATE_RESULT_TABLE_ALIASES : >>-UPDATE QP_SYSTEM USING---------------------------------------> >--+-DEFAULT------------------------------+-------------------->< '-CREATE_RESULT_TABLE_ALIASES--+-'Y'-+-' '-'N'-' Suppression des alias de tables de résultats orphelins Les alias créés avec l'option CREATE_RESULT_TABLE_ALIASES sont automatiquement supprimé lorsqu'une table de résultats est supprimée. Toutefois, il existe deux cas oà la table de résultats peut être supprimée sans que les alias correspondant soient supprimés. * Lorsque la table de résultats est supprimée manuellement sans utiliser la commande qp ou le Centre Query Patroller. * Lorsque la table de résultats est supprimée à l'aide de la ligne de commande qp ou du Centre Query Patroller sous l'autorité d'un opérateur qui n'est pas l'émetteur de la requête et qui n'a pas le droit DBADM. Pour nettoyer les alias n'ayant pas de tables de résultats correspondantes, un nouvelle commande, REMOVE RESULT_TABLE_ALIASES, a été créée. Cette commande est automatiquement exécutée lorsque les tables de résultats sont purgées (processus de purge planifié). La commande REMOVE RESULT_TABLE_ALIASES permet d'obtenir la liste d'alias à purger à l'aide de la requête suivante : with a as (select tabschema, tabname from syscat.tables where type = 'A' and tabname like 'QUERY%_RESULTS'), t as (select tabname from syscat.tables where type = 'T' and tabname like 'QUERY%_RESULTS') select all tabschema, tabname from a where not exists (select * from t where t.tabname=a.tabname) Conditions préalables Vous devez disposer des droits DBADM. Procédure 1. Emettez la commande REMOVE RESULT_TABLE_ALIASES Cette commande supprimer tous les alias existant après avoir supprimé les tables correspondantes. Les alias ont été créés par Query Patroller pour les tables de résultats. Syntaxe de commande >>-REMOVE RESULT_TABLE_ALIASES--------------------------------->< Remarque : Pour plus d'informations sur les commandes Query Patroller à l'aide de l'interface de ligne de commandes et sur la syntaxe des commandes Query Patroller, voir l'interface de ligne de commandes de Query Patroller. Un ID utilisateur isolé nécessite un fichier journal qpdiag.log avec accès en écriture et un chemin d'accès Query Patroller utilise des procédures mémorisées isolées pouvant consigner des entrées dans le fichier qpdiag.log. Par conséquent, l'ID utilisateur isolé a besoin d'un accès en écriture au fichier journal qpdiag.log et du chemin d'accès de ce fichier. Mise en route mise à jour du centre de documentation DB2 installé sur votre ordinateur ou sur un serveur intranet Pour mettre à jour votre centre de documentation DB2 installé en local, téléchargez le dernier FixPak de documentation DB2 à partir de l'adresse http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html. Toutefois, les FixPaks de documentation DB2 ne sont pas souvent publiés et ne reflètent pas toujours les niveaux les plus récents de la documentation DB2. La dernière version de la documentation DB2 est toujours la version du centre de documentation DB2 hébergé à l'adresse http://publib.boulder.ibm.com/infocenter/db2help/ Mémoire : configuration minimale DB2 Universal Database (UDB) nécessite un minimum de 256 Mo de mémoire RAM. Pour un système exécutant uniquement des outils DB2 UDB et l'interface graphique DB2, un minimum de 512 Mo de mémoire RAM est nécessaire. Toutefois, nous vous recommandons 1 Go de mémoire RAM pour de meilleures performances. Cette configuration n'inclut pas les besoins en mémoire supplémentaire spécifiques aux autres logiciels de votre système. Vous devez prendre en compte les informations suivantes lorsque vous déterminez vos besoins de mémoire : * Pour la prise en charge du client DB2, la configuration de la mémoire s'appuie sur une base de 5 connexions clients simultanées. Vous aurez besoin de 16 Mo de mémoire RAM supplémentaires par 5 connexions client. * La configuration mémoire dépend de la taille et de la complexité de votre système de base de données, ainsi que de l'étendue de l'activité de la base de données et le nombre de clients qui accèdent à votre système. * Pour les systèmes d'exploitation Linux, nous vous recommandons un espace de permutation d'au moins deux fois la taille de la quantité de mémoire RAM. Clarification de la prise en charge client DB2 UDB La rubrique "Clients DB2" dans la version 8.1 du guide Clients DB2 - Mise en route indique ce qui suit : Les clients DB2 peuvent se connecter aux serveurs DB2 de même niveau ou qui leur sont postérieurs de deux éditions ou antérieurs d'une édition. Cette affirmation doit être corrigée de la façon suivante : Si les connexions des clients de la version N aux serveurs de la version N + 2 sont possibles dans certains environnements, l'équipe du support DB2 prend en charge cette configuration tant que la version N est en service. Lorsqu'elle ne l'est plus, cette configuration n'est plus prise en charge. Ainsi, la connexion des clients DB2 version 7 à un serveur DB2 version 8 n'est plus prise en charge par l'équipe du support DB2 car la version 7 a été retirée de la commercialisation. Modification des paramêtres du noyau (Linux) Avant d'installer DB2 UDB, vous devez envisager la mise à jour de vos paramêtres de noyau Linux. DB2 Universal Database (UDB) élève automatiquement les limites IPC lorsque cela est nécessaire. Si vous le souhaitez, vous pouvez élever davantage ces limites en fonction de vos besoins particuliers. Conditions préalables Pour modifier les paramêtres du noyau, vous devez disposer des droits d'utilisateur root. Procédure Pour modifier les paramêtres du noyau, procédez comme suit : Red Hat et SuSE Les systèmes utilisant un noyau 2.4.x attribuent une valeur par défaut au paramêtre de file d'attente des messages (msgmni), qui n'autorise que quelques connexions simultanées à DB2. Les paramêtres de matrices de sémaphores doivent également être modifiés pour que DB2 UDB s'exécute avec succès. Pour vérifier les limites du segment de mémoire partagée, de la matrice de sémaphores et de la file d'attente des messages, lancez la commande ipcs -l. Voici le résultat renvoyé par la commande ipcs -l : # ipcs -l ------ Shared Memory Limits -------- max number of segments = 4096 // SHMMNI max seg size (kbytes) = 262144 // SHMMAX max total shared memory (kbytes) = 8388608 // SHMALL min seg size (bytes) = 1 ------ Semaphore Limits -------- max number of arrays = 1024 // SEMMNI max semaphores per array = 250 max semaphores system wide = 256000 max ops per semop call = 32 semaphore max value = 32767 ------ Messages: Limits -------- max queues system wide = 1024 // MSGMNI max size of message (bytes) = 65535 // MSGMAX default max size of queue (bytes) = 16384 // MSGMNB où max semaphores system wide = max number of arrays x max semaphores/array Pour les noyaux Linux 32 bits, modifiez les paramêtres du noyau en ajoutant les entrées suivantes dans le fichier de configuration du contrôle système par défaut, /etc/sysctl.conf : kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=268435456 Pour les noyaux Linux 64 bits, modifiez les paramêtres du noyau en ajoutant les entrées suivantes dans le fichier de configuration du contrôle système par défaut, /etc/sysctl.conf : kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=1073741824 Exécutez sysctl avec l'option -p pour charger les paramêtres sysctl du fichier par défaut /etc/sysctl.conf : sysctl -p Les entrées du fichier sysctl.conf sont lues pendant le démarrage par le script d'initialisation du réseau. Dans certaines distributions, il se peut que vous deviez ajouter sysctl -p dans l'un des fichiers d'initialisation du système (par exemple, rc.local), pour que les paramêtres du noyau soient pris en compte après chaque redémarrage. Modification des paramêtres du noyau (Environnement d'exploitation Solaris) Les informations ci-après modifient le contenu de la rubrique "Modification des paramêtres du noyau (Environnement d'exploitation Solaris)" du manuel DB2 UDB - Serveurs DB2 - Mise en route : Pour que DB2 Universal Database (UDB) fonctionne correctement, il est recommandé de mettre à jour vos paramêtres de configuration du noyau pour le système. Vous pouvez faire appel à l'utilitaire db2osconf pour une suggestion des paramêtres de noyau recommandés. Pour utiliser la commande db2osconf, vous devez d'abord installer DB2 UDB. L'utilitaire db2osconf peut être exécuté uniquement à partir de $DB2DIR/bin. Vous devez redémarrer votre système une fois que vous avez modifié les paramêtres du noyau. Le manuel DB2 Universal Database Express Edition Version 8.2 Basics est prêt pour téléchargement IBM DB2 Universal Database Express (DB2 UDB Express) est le dernier né de la famille de produits DB2 Universal Database Version 8. Il combine la puissance, les fonctionnalités et la fiabilité de la base de données relationnelles DB2 UDB d'IBM maintes fois primée à la simplicité du conditionnement, de l'installation et du déploiement pour un coùt d'investissement minimal afin de répondre aux exigences de gestion des données des petites et moyennes entreprises. DB2 UDB Express est destiné aux clients disposant de compétences internes minimales en matière de base de données et ayant besoin d'une base de données facile à installer qui soit intégrée à leurs solutions logicielles applicatives. DB2 UDB Express est une version multi-utilisateurs de DB2 UDB prenant en charge des applications locales et éloignées dans des environnements de réseau locaux et autonomes. Pour plus d'informations sur DB2 UDB Express, téléchargez Quick Beginnings for DB2 Express Edition et DB2 Universal Database Express Edition Version 8.2 Basics à partir de la page Web des manuels relatifs au produit DB2 UDB à l'adresse suivante : http://www.ibm.com/software/data/db2/udb/support/manualsv8.html Vérification de la préparation de vos bases de données pour la migration Les conditions requises suivantes vous expliquent comment vérifier que vos bases de données sont prêtes pour la migration : Conditions préalables Vérifiez que le fichier journal migration.log, situé dans le répertoire principal du propriétaire de l'instance, contient le texte suivant : Version of DB2CKMIG being run: VERSION 8. Cette condition est une étape de post-migration effectuée en fin de procédure. Certification des critères communs pour DB2 UDB Les informations faisant autorité pour des configurations de DB2 UDB ayant fait l'objet de la certification des critères communs se trouvent à l'adresse http://niap.nist.gov/cc-scheme Extension spatiale Vérification de l'installation de l'Extension spatiale Vous pouvez utiliser le programme exemple runGseDemo pour vous familiariser avec la programmation d'applications pour DB2 Extension Spatiale. Pour une description des étapes suivies par le programme exemple pour créer une base de données compatible et effectuer une analyse spatiale des données de cette base de données, voir la rubrique intitulée "Programme exemple de DB2 Extension Spatiale". Vous pouvez trouver cette rubrique dans le Centre de documentation et dans le guide Spatial Extender and Geodetic Extender User's Guide and Reference. DB2 Extension Spatiale fournit un autre exemple de programme, seBankDemoRunBankDemo, qui montre comment ajouter des fonctions spatiales à un système d'informations existant. Pour plus d'informations sur les programmes exemples, voir les fichiers README situés dans les répertoires suivants : Windows ~\sqllib\samples\spatial ~\sqllib\samples\spatial\bank Linux et UNIX ~/sqllib/spatial ~/sqllib/spatial/bank Routines d'administration SQL Nom de colonne incorrect documenté dans l'ensemble de résultats pour la fonction de table SNAP_GET_DYN_SQL La rubrique "SNAP_GET_DYN_SQL table function" du Centre de documentation DB2, version 8.2.2 (équivalente de la version 8.1, FixPak 9) documente de façon incorrecte l'ensemble de résultats pour la fonction de table SNAP_GET_DYN_SQL. L'une des colonnes est documentée de façon incorrecte comme étant STMT_TXT. Le nom correct pour la colonne de résultat est STMT_TEXT. Les fonctions de table de moniteur d'images ont des vues propres à la version Des vues propres à la version ont été définies pour les fonctions de table de moniteur d'images ci-après, introduites dans la version 8.2.2 de DB2 Universal Database (équivalente de la version 8.1, FixPak 9) : * SNAP_GET_CONTAINER * SNAP_GET_DB * SNAP_GET_DYN_SQL * SNAP_GET_STO_PATHS * SNAP_GET_TAB * SNAP_GET_TBSP * SNAP_GET_TBSP_PART Les vues propres à la version sont les suivantes : * SYSCATV82.SNAPCONT * SYSCATV82.SNAPDB * SYSCATV82.SNAPDYNSQL * SYSCATV82.SNAPSTOPATHS * SYSCATV82.SNAPTAB * SYSCATV82.SNAPTBSPACE * SYSCATV82.SNAPTBSPACEPART Etant donné qu'il n'est pas garanti que les tables de résultats des fonctions de table de moniteur d'images ne changent pas d'une édition à une autre, il est recommandé d'utiliser les vues propres à chaque version si vous souhaitez disposer de tables de résultats fiables. Chaque vue contient l'ensemble des colonnes de la table de résultats de sa table de fonction de moniteur d'images associée. La procédure GET_DB_CONFIG requiert une taille de page minimale de 8 ko pour un espace de table utilisateur temporaire La procédure GET_DB_CONFIG requiert un espace de table utilisateur temporaire avec une taille de page au moins égale à 8 ko. L'exemple documenté qui indique comment utiliser la procédure GET_DB_CONFIG doit être remplacé par l'exemple ci-après. A l'aide de l'interpréteur de commandes (CLP), modifiez la valeur des paramêtres de configuration de la base de données logretain et userexit. Procédez à l'extraction des valeurs originales (sur disque) et mises à jour (en mémoire) en appelant la procédure GET_DB_CONFIG. UPDATE DB CFG USING LOGRETAIN RECOVERY USEREXIT YES CALL SYSPROC.GET_DB_CONFIG() L'exemple ci-après est le résultat partiel de cet appel de procédure. Result set 1 -------------- DBCONFIG_TYPE ... LOGRETAIN ... USEREXIT... ------------- ----------- ----------- 0 1 1 1 0 0 2 record(s) selected. Return Status = 0 Référence SQL EXPLAIN_DIAGNOSTIC : une nouvelle table Explain La table EXPLAIN_DIAGNOSTIC contient une entrée pour chaque message de diagnostic généré pour une instance particulière d'une instruction expliquée dans la table EXPLAIN_STATEMENT. La fonction de table EXPLAIN_GET_MSGS interroge les tables EXPLAIN_DIAGNOSTIC et EXPLAIN_DIAGNOSTIC_DATA et renvoie des messages formatés. Tableau 39. Table EXPLAIN_DIAGNOSTIC Nom de | Type de | Valeu | Cl | Description colonne | données | r | é | | | NULL | 1 | | | admis | | | | e | | --------------+----------+-------+----+------------------------------ EXPLAIN_REQU | VARCHAR( | Non | PK | ID utilisateur de ESTER | 128) | | , | l'initiateur de cette | | | FK | demande Explain. --------------+----------+-------+----+------------------------------ EXPLAIN_TIME | TIMESTAM | Non | PK | Heure à laquelle la demande | P | | , | Explain a été initiée. | | | FK | --------------+----------+-------+----+------------------------------ SOURCE_NAME | VARCHAR( | Non | PK | Nom du package en cours | 128) | | , | d'exécution lorsque | | | FK | l'instruction dynamique a | | | | été expliquée, ou nom du | | | | fichier lors de | | | | l'explication du SQL | | | | statique. --------------+----------+-------+----+------------------------------ SOURCE_SCHEM | VARCHAR( | Non | PK | Schéma, ou qualifiant, de la A | 128) | | , | source de la demande | | | FK | Explain. --------------+----------+-------+----+------------------------------ SOURCE_VERSI | VARCHAR( | Non | PK | Version de la source de la ON | 64) | | , | demande Explain. | | | FK | --------------+----------+-------+----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Non | PK | Niveau des informations L | | | , | Explain pour lequel cette | | | FK | ligne est pertinente. | | | | Les valeurs correctes sont : | | | | * O : Texte original (tel | | | | qu'entré par l'utilisateur) | | | | * P : SELECTION DE PLAN --------------+----------+-------+----+------------------------------ STMTNO | INTEGER | Non | PK | Numéro d'instruction dans le | | | , | package auquel se rapportent | | | FK | ces informations Explain. | | | | Egal à 1 pour les | | | | instructions Explain SQL | | | | dynamique. Pour les | | | | instructions SQL statique, | | | | cette valeur est la même que | | | | celle utilisée pour la vue | | | | catalogue SYSCAT.STATEMENTS. --------------+----------+-------+----+------------------------------ SECTNO | INTEGER | Non | PK | Numéro de section dans le | | | , | package contenant cette | | | FK | instruction SQL. Pour les | | | | instructions Explain SQL | | | | dynamique, numéro de section | | | | utilisé pour mettre en | | | | attente la section pour | | | | cette instruction lors de | | | | l'exécution. Pour les | | | | instructions SQL statique, | | | | cette valeur est la même que | | | | celle utilisée pour la vue | | | | catalogue SYSCAT.STATEMENTS. --------------+----------+-------+----+------------------------------ DIAGNOSTIC_I | INTEGER | Non | PK | ID diagnostic pour une D | | | | instance particulière d'une | | | | instruction dans la table | | | | EXPLAIN_STATEMENT. --------------+----------+-------+----+------------------------------ CODE | INTEGER | Non | No | Numéro unique affecté à | | | n | chaque message de | | | | diagnostic. Ce numéro peut | | | | être utilisé par une API de | | | | message pour extraire le | | | | texte complet du message de | | | | diagnostic. 1. PK signifie que la colonne fait partie d'une clé primaire (primary key) ; FK signifie que la colonne fait partie d'une clé externe (foreign key). EXPLAIN_DIAGNOSTIC_DATA : une nouvelle table Explain La table EXPLAIN_DIAGNOSTIC_DATA contient des jetons de message pour des messages de diagnostic spécifiques enregistrés dans la table EXPLAIN_DIAGNOSTIC. Les jetons de message fournissent des informations complémentaires propres à l'exécution de l'instruction SQL ayant généré le message. La fonction de table EXPLAIN_GET_MSGS interroge les tables EXPLAIN_DIAGNOSTIC et EXPLAIN_DIAGNOSTIC_DATA et renvoie des messages formatés. Tableau 40. Table EXPLAIN_DIAGNOSTIC_DATA Nom de | Type de | Valeu | Cl | Description colonne | données | r | é | | | NULL | 1 | | | admis | | | | e | | --------------+----------+-------+----+------------------------------ EXPLAIN_REQU | VARCHAR( | Non | FK | ID utilisateur de ESTER | 128) | | | l'initiateur de cette | | | | demande Explain. --------------+----------+-------+----+------------------------------ EXPLAIN_TIME | TIMESTAM | Non | FK | Heure à laquelle la demande | P | | | Explain a été initiée. --------------+----------+-------+----+------------------------------ SOURCE_NAME | VARCHAR( | Non | FK | Nom du package en cours | 128) | | | d'exécution lorsque | | | | l'instruction dynamique a | | | | été expliquée, ou nom du | | | | fichier lors de | | | | l'explication du SQL | | | | statique. --------------+----------+-------+----+------------------------------ SOURCE_SCHEM | VARCHAR( | Non | FK | Schéma, ou qualifiant, de la A | 128) | | | source de la demande | | | | Explain. --------------+----------+-------+----+------------------------------ SOURCE_VERSI | VARCHAR( | Non | FK | Version de la source de la ON | 64) | | | demande Explain. --------------+----------+-------+----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Non | FK | Niveau des informations L | | | | Explain pour lequel cette | | | | ligne est pertinente. | | | | Les valeurs correctes sont : | | | | * O : Texte original (tel | | | | qu'entré par l'utilisateur) | | | | * P : SELECTION DE PLAN --------------+----------+-------+----+------------------------------ STMTNO | INTEGER | Non | FK | Numéro d'instruction dans le | | | | package auquel se rapportent | | | | ces informations Explain. | | | | Egal à 1 pour les | | | | instructions Explain SQL | | | | dynamique. Pour les | | | | instructions SQL statique, | | | | cette valeur est la même que | | | | celle utilisée pour la vue | | | | catalogue SYSCAT.STATEMENTS. --------------+----------+-------+----+------------------------------ SECTNO | INTEGER | Non | FK | Numéro de section dans le | | | | package contenant cette | | | | instruction SQL. Pour les | | | | instructions Explain SQL | | | | dynamique, numéro de section | | | | utilisé pour mettre en | | | | attente la section pour | | | | cette instruction lors de | | | | l'exécution. Pour les | | | | instructions SQL statique, | | | | cette valeur est la même que | | | | celle utilisée pour la vue | | | | catalogue SYSCAT.STATEMENTS. --------------+----------+-------+----+------------------------------ DIAGNOSTIC_I | INTEGER | Non | PK | ID diagnostic pour une D | | | | instance particulière d'une | | | | instruction dans la table | | | | EXPLAIN_STATEMENT. --------------+----------+-------+----+------------------------------ ORDINAL | INTEGER | Non | No | Position du jeton dans le | | | n | texte complet du message. --------------+----------+-------+----+------------------------------ TOKEN | VARCHAR( | Oui | No | Jeton de message devant être | 1000) | | n | inséré dans le texte complet | | | | du message ; peut être | | | | tronqué. --------------+----------+-------+----+------------------------------ TOKEN_LONG | BLOB(3M) | Oui | No | Informations plus | | | n | détaillées, si disponibles. 1. PK signifie que la colonne fait partie d'une clé primaire (primary key) ; FK signifie que la colonne fait partie d'une clé externe (foreign key). Schéma utilisé avec la fonction Explain La fonction Explain utilise les ID suivants comme schéma lorsqu'elle qualifie les tables Explain qu'elle remplit : * ID autorisation pour SQL dynamique * ID autorisation d'instruction pour SQL statique Le schéma peut être associé avec un ensemble de tables Explain ou des alias pointant vers un ensemble de tables Explain dans un autre schéma. Si aucune table Explain n'est trouvée dans le schéma, la fonction Explain recherche les tables dans le schéma SYSTOOLS et tente de les utiliser. Représentations de chaînes des valeurs date/heure Chaîne Heure La réprésentation par chaîne de l'heure est une chaîne commençant pas un chiffre et d'une longueur d'au moins 4 caractères. Des espaces peuvent être inclus, le zéro du début peut être omis pour l'heure et les secondes peuvent être omises. Si les secondes sont omises, un spécification implicite de 0 seconde est supposée. Par conséquent, 13:30 équivaut à 13:30:00. Les formats de chaîne corrects pour les heures sont répertoriés dans le tableau suivant. Chaque format est identifié par son nom et un abréviation appropriée. Tableau 41. Formats pour les réprésentations par chaînes des heures +---------------------------+-------------+-------------+-------------+ | Nom de format | Abréviation | Format | Exemple | | | | Heure | | +---------------------------+-------------+-------------+-------------+ | International Standards | ISO | hh.mm.ss | 13.30.05 | | Organization | | | | +---------------------------+-------------+-------------+-------------+ | Norme IBM USA | USA | hh:mm AM ou | 1:30 PM | | | | PM | | +---------------------------+-------------+-------------+-------------+ | Norme IBM European | EUR | hh.mm.ss | 13.30.05 | +---------------------------+-------------+-------------+-------------+ | Japanese Industrial | JIS | hh:mm:ss | 13:30:05 | | Standard Christian Era | | | | +---------------------------+-------------+-------------+-------------+ | Défini par le site | LOC | En fonction | - | | | | du code | | | | | territoire | | | | | de | | | | | l'applicati | | | | | on | | +---------------------------+-------------+-------------+-------------+ A la version 8.2, "AM" et "PM" peuvent être réprésenté en minuscule ou majuscules. Moniteur système Récapitulatif des indicateurs d'état Dans la rubrique "Health indicators summary" (Récapitulatif des indicateurs de santé) de la version 8.2.2 (équivalente de la version 8.1, FixPak 9) du Centre de documentation DB2, l'identificateur pour l'indicateur de santé d'utilisation du stockage automatique de la base de données est incorrectement documenté comme étant db.db_auto_storage_util. L'identificateur correct pour l'indicateur d'état du stockage automatique de la base de données est db.auto_storage_util. Liste d'applications découplées sans concentrateur de connexion activé Il est possible de voir les applications découplées en émettant la commande list applications sans concentrateur de connexion activé. Contrôle de la progression du processus d'annulation d'exécution Le contrôle de la progression de l'annulation de l'exécution fournit des informations de progression sur les événements d'annulation à l'aide des images instantanées d'application. Ces événements sont de deux types : Annulation de l'unité de travail Comprend les annulation explicites (demandées par l'utilisateur) et implicites de la transaction entière. Annulation du point de sauvegarde Comprend l'instruction et les points de sauvegarde du niveau d'application. Les points de sauvegarde imbriqué sont considéré comme unité unique à l'aide du point de sauvegarde le plus loin. Les informations fournies sont l'heure de début de l'événement d'annulation, le travail à effectuer (volume total) et le travail effectué. La mesure se fait en octets. Les unités totales de travail correspondent à l'intervalle dans le flux de connexion nécessitant une annulation de la transaction ou d'un point de sauvegarde. Les unités de travail terminées indiquent la position relative dans le flux de connexion ayant été annulé. Les actualisations du travail terminé sont effectuées après chaque enregistrement de connexion. Les actualisations ne sont pas effectuées seulement parce que les enregistrements de connexion varient en termes de taille. Modèle de sortie à partir de la commande GET SNAPSHOT FOR ALL APPLICATIONS Images instantanées d'application Application handle = 6 Application status = Rollback Active Start Time = 02/20/2004 12:49:27.713720 Completed Work = 1024000 bytes Total Work = 4084000 bytes Images instantanées d'application Application handle = 10 Application status = Rollback to Savepoint Start Time = 02/20/2004 12:49:32.832410 Completed Work = 102400 bytes Total Work = 2048000 bytes Remarque : Si l'annulation n'est pas active pendant la capture de l'image instantanée, les éléments d'annulation ne seront pas affichés. Extension XML Procédures mémorisées - Modification des paramêtres dxxGenXML, dxxGenXMLClob, dxxRetrieveXML et dxxRetrieveXMLClob La description du paramêtre substitution pour les procédures mémorisées a été modifiée : * dxxGenXML() * dxxGenXMLClob() * dxxRetrieveXML() * dxxRetrieveXMLClob() La mise à jour est la suivante : Paramêtres Tableau 42. Paramêtre de substitution pour les procédures mémorisées dxxGenXML, dxxGenXMLClob, dxxRetrieveXML et dxxRetrieveXMLClob +-----------+--------------------------------------------+------------+ | Paramêtre | Description | Paramêtre | | | | IN/OUT | +-----------+--------------------------------------------+------------+ | substitut | Se substitue à la condition du fichier de | IN | | ion | définition d'accès au document (DAD). La | | | | valeur saisie se base sur le paramêtre | | | | TypeDeSubstitution. | | | | * NO_OVERRIDE : chaîne vide. | | | | * SQL_OVERRIDE : instruction SQL valide. | | | | L'utilisation de ce paramêtre | | | | TypeDeSubstitution repose sur | | | | l'utilisation de la mise en correspondance | | | | SQL dans le fichier DAD. L'instruction SQL | | | | d'entrée se substitue au paramêtre | | | | SQL_stmt du fichier DAD. | | | | * XML_OVERRIDE : chaîne qui contient une | | | | ou plusieurs expressions qui sont séparées | | | | par le mot ET. L'utilisation de ce | | | | paramêtre TypeDeSubstitution repose sur | | | | l'utilisation de la mise en correspondance | | | | du noeud_RDB dans le fichier DAD. | | +-----------+--------------------------------------------+------------+ Décomposition des documents XML en données DB2 UDB Limites de la taille de la table de décomposition La décomposition utilise la mise en correspondance du noeud_RDB pour indiquer la façon dont un document XML est décomposé en tables DB2 par l'extraction des valeurs d'attribut et d'élément et leur stockage dans des lignes de table. Les valeurs de chaque document XML sont enregistrées dans une ou plusieurs tables DB2 UDB. Chaque table peut contenir un maximum de 10240 lignes décomposées de chaque document. Par exemple, si un document XML est décomposé en cinq tables, chacune des cinq tables peut comprendre jusqu'à 10 240 lignes pour ce document donné. Si la table contient des lignes pour de multiples documents, elle peut contenir jusqu'à 10 240 lignes pour chaque document. L'utilisation d'éléments à occurrences multiples (éléments avec des chemins d'emplacement qui peuvent se produire plusieurs fois dans la structure XML) a une incidence sur le nombre de lignes. Par exemple, un document qui contient un élément qui se produit 20 fois, peut se décomposer en 20 lignes dans une table. Lorsque vous utilisez des éléments à occurrences multiples, vous devez considérer qu'un maximum de 10 240 lignes peut être décomposé dans une table à partir d'un seul document. Décomposition de documents de plus de 1 Mo Il n'est pas nécessaire de supprimer et de recréer la procédure mémorisée dxxShredXML pour décomposer des documents de plus de 1 Mo. Il suffit d'appeler la procédure mémorisée dxxShredXML100MB, capable de diviser des documents de 100 Mo au maximum. Bien que dxxShredXML100MB puisse traiter des documents volumineux, vous devrez peut-être augmenter les autres ressources pour permettre l'exécution correcte de cette procédure mémorisée. Pour appeler la procédure mémorisée via le programme exemple dxxshrd, utilisez le nouveau marqueur "-large". Par exemple : dxxshrd -large mydb xxx.xml Si votre version de DB2 Universal Database est antérieure à la version 8 FixPack 6, exécutez dxxMigv pour faire migrer XML Extender vers le niveau actuel et permettre l'exécution de la procédure mémorisée. Configuration des fonctions UDF MQ XML avec Extension XML Vous devez configurer et activer l'utilisateur XML MQ -Fonctions UDF avant de pouvoir les utiliser. Conditions préalables Installez les fonctions UDF en suivant la procédure décrite dans la rubrique "Installation des fonctions UDF DB2 WebSphere MQ", accessible via le Centre de documentation ou dans le guide IBM DB2 Information Integrator Application Developer. Procédure Pour configurer et activer les fonctions UDF avec Extension XML : 1. Ouvrez une fenêtre d'invite dans DB2. 2. Connectez-vous à la base de données utilisant les fonctions UDF MQ XML en entrant la commande suivante : db2 connect to 3. Affichez le répertoire bnd dans le chemin d'installation de DB2 Universal Database, par exemple : * SQLLIB/bnd (Linux et UNIX) * C:\Program Files\IBM\SQLLIB\bnd (Windows) 4. Associez la base de donénes à Extension Spatiale à l'aide de la commande suivante : db2 bind @dbxxbind.lst 5. Associez la base de données pour qu'Extension spatiale utiliser les fonctions UDF MQ XML à l'aide de la commande suivante : db2 bind mqxml.bnd 6. Associez la base de donénes à CLI à l'aide de la commande suivante : db2 bind @db2cli.lst Variable d'environnement DB2DXX_MIN_TMPFILE_SIZE Extension Spatiale L'Extension XML de DB2 peut placer des documents volumineux dans des fichiers temporaires pour éviter d'utiliser trop de mémoire au cours du traitement. Sur les systèmes dotés de beaucoup de mémoire physique, il est possible d'éviter de déplacer des documents dans des fichiers temporaires, ce qui réduit l'activité d'entrée-sortie. La variable d'environnement variable DB2DXX_MIN_TMPFILE_SIZE indique à l'Extension XML d'utiliser des tampons de mémoire plutôt que des fichiers temporaires, pour le traitement de documents plus petits que la valeur spécifiée. Cette variable est applicable uniquement sur le serveur. Si plusieurs noeuds physiques participent à un environnement partitionné, cette variable peut être définie différemment sur chaque noeud, reflétant précisément la quantité de mémoire installée sur chacun d'entre eux. Si cette variable d'environnement n'est pas définie, les documents dont la taille est supérieure à 128 ko seront automatiquement placés dans des fichiers temporaires au cours du traitement et deux inférieurs à 128 ko seront traités en mémoire. Redéfinition UDT DB2XML.XMLVarchar Vous pouvez redéfinir le type UDT (UDT) DB2XML.XMLVarchar jusqu'à 32 ko. Pour changer la taille du type UDT XMLVarchar, créez l'UDT avant d'activer la base de données pour l'Extension XML. Pour plus d'informations, voir le guide DB2 XML Extender Administration and Programming. Annexe A. Structure des répertoires du CD-ROM DB2 UDB FixPack systèmes d'exploitation Windows Les fichiers du CD FixPack sont placés comme suit : Tableau 43. Fichiers Windows +------------------+--------------------------------------------------+ | Fichiers | Emplacement | +------------------+--------------------------------------------------+ | Fichiers du | x:\db2 | | produit DB2 : | | +------------------+--------------------------------------------------+ | Remarques sur | x:\doc\\install.txt | | l'installation : | | +------------------+--------------------------------------------------+ | Remarques sur | x:\doc\\install.htm | | l'installation | | | (HTML) : | | +------------------+--------------------------------------------------+ | Fichiers licence | x:\db2\license | | : | | +------------------+--------------------------------------------------+ | Notes sur | x:\doc\\release.txt | | l'édition : | | +------------------+--------------------------------------------------+ | Notes sur | x:\doc\\db2ir\index.htm | | l'édition (HTML) | | | : | | +------------------+--------------------------------------------------+ où : * x: correspond à votre lecteur de CD * correspond au répertoire de la langue, qui est constitué d'un code à cinq caractères. Celui-ci fait référence à l'une des langues de Tableau 45 systèmes d'exploitation UNIX Les fichiers du CD FixPack sont placés comme suit. Tableau 44. Fichiers UNIX +------------------+--------------------------------------------------+ | Fichiers | Emplacement | +------------------+--------------------------------------------------+ | Fichiers du | /cdrom/db2 | | produit DB2 : | | +------------------+--------------------------------------------------+ | Remarques sur | /cdrom/doc//install.txt | | l'installation : | | +------------------+--------------------------------------------------+ | Remarques sur | /cdrom/doc//install.htm | | l'installation | | | (HTML) : | | +------------------+--------------------------------------------------+ | Fichiers licence | /cdrom/db2/license | | : | | +------------------+--------------------------------------------------+ | Notes sur | /cdrom/doc//release.txt | | l'édition : | | +------------------+--------------------------------------------------+ | Notes sur | /cdrom/doc//db2ir/index.htm | | l'édition (HTML) | | | : | | +------------------+--------------------------------------------------+ où : * /cdrom correspond à votre point de montage * correspond au répertoire de la langue, qui est constitué d'un code à cinq caractères. Celui-ci fait référence à l'une des langues de Tableau 45 Le tableau suivant représente les noms de répertoire et la langue correspondante. Tableau 45. Noms de répertoire et langue correspondante +----------------+----------------------------------------------------+ | Répertoire | Langue | +----------------+----------------------------------------------------+ | ar_AA | Arabe | +----------------+----------------------------------------------------+ | bg_BG | Bulgare | +----------------+----------------------------------------------------+ | cs_CZ | Tchèque | +----------------+----------------------------------------------------+ | da_DK | Danois | +----------------+----------------------------------------------------+ | de_DE | Allemand | +----------------+----------------------------------------------------+ | el_GR | Grec | +----------------+----------------------------------------------------+ | en_US | Anglais | +----------------+----------------------------------------------------+ | es_ES | Espagnol | +----------------+----------------------------------------------------+ | fi_FI | Finnois | +----------------+----------------------------------------------------+ | fr_FR | Français | +----------------+----------------------------------------------------+ | hr_HR | Croate | +----------------+----------------------------------------------------+ | hu_HU | Hongrois | +----------------+----------------------------------------------------+ | it_IT | Italien | +----------------+----------------------------------------------------+ | iw_IL | Hébreu | +----------------+----------------------------------------------------+ | ja_JP | Japonais | +----------------+----------------------------------------------------+ | ko_KR | Coréen | +----------------+----------------------------------------------------+ | nl_NL | Néerlandais | +----------------+----------------------------------------------------+ | no_NO | Norvégien | +----------------+----------------------------------------------------+ | pl_PL | Polonais | +----------------+----------------------------------------------------+ | pt_BR | Portugais (Brésil) | +----------------+----------------------------------------------------+ | pt_PT | Portugais | +----------------+----------------------------------------------------+ | ro_RO | Roumain | +----------------+----------------------------------------------------+ | ru_RU | Russe | +----------------+----------------------------------------------------+ | sk_SK | Slovak | +----------------+----------------------------------------------------+ | sl_SI | Slovène | +----------------+----------------------------------------------------+ | sv_SE | Suédois | +----------------+----------------------------------------------------+ | tr_TR | Turc | +----------------+----------------------------------------------------+ | zh_CN | Chinois simplifié | +----------------+----------------------------------------------------+ | zh_TW | Chinois traditionnel | +----------------+----------------------------------------------------+ Remarques : 1. Les noms de répertoires peuvent être affichés en majuscules ou minuscules, en fonction de votre système d'exploitation. 2. Les répertoires cités plus haut n'apparaissent peut-être pas tous sur ce CD-ROM ; en effet, les répertoires de langues ne sont pas tous disponibles sur tous les CD. 3. Dans la version 8.2, les Notes sur l'installation forment une section des Notes sur l'édition. Annexe B. Comment prendre contact avec IBM Aux Etats-Unis, contactez IBM aux numéros suivants : * 1-800-IBM-SERV (1-800-426-7378) pour obtenir le service client * 1-888-426-4343 pour connaître les options de service disponibles * 1-800-IBM-4YOU (426-4968) pour obtenir le service Ventes et marketing DB2 Au Canada, contactez IBM aux numéros suivants : * 1-800-IBM-SERV (1-800-426-7378) pour obtenir le service client * 1-800-465-9600 pour connaître les options de service disponibles * 1-800-IBM-4YOU (1-800-426-4968) pour obtenir le service Ventes et marketing DB2 Pour trouver un bureau IBM dans votre pays ou votre région, reportez-vous à l'annuaire en ligne des contacts internationaux d'IBM sur le Web à l'adresse suivante : http://www.ibm.com/planetwide B.1 Informations produit Vous pouvez obtenir des informations concernant les produits DB2 Universal Database par téléphone ou via Internet à l'adresse suivante : http://www.ibm.com/software/data/db2/udb Ce site propose les dernières informations en date de la bibliothèque technique, des manuels à commander, des téléchargements de produits, des groupes de discussion, des FixPacks, des actualités, ainsi que des liens vers d'autres ressources Web. Aux Etats-Unis, composez l'un des numéros suivants : * 1-800-IBM-CALL (1-800-426-2255) pour commander des produits ou obtenir des informations générales. * 1-800-879-2755 pour commander des manuels. Pour savoir comment contacter IBM en dehors des Etats-Unis, consultez la page Web internationale d'IBM à l'adresse www.ibm.com/planetwide Annexe C. Remarques Le présent document peut contenir des informations ou des références concernant certains produits, logiciels ou services IBM non annoncés dans ce pays. Pour plus de détails, référez-vous aux documents d'annonce disponibles dans votre pays, ou adressez-vous à votre partenaire commercial IBM. Toute référence à un produit, logiciel ou service IBM n'implique pas que seul ce produit, logiciel ou service puisse être utilisé. Tout autre élément fonctionnellement équivalent peut être utilisé, s'il n'enfreint aucun droit d'IBM. Il est de la responsabilité de l'utilisateur d'évaluer et de vérifier lui-même les installations et applications réalisées avec des produits, logiciels ou services non expressément référencés par IBM. IBM peut détenir des brevets ou des demandes de brevets couvrant les produits mentionnés dans le présent document. La remise de ce document ne vous donne aucun droit de licence sur ces brevets ou demandes de brevet. Si vous désirez recevoir des informations concernant l'acquisition de licences, veuillez en faire la demande par écrit à l'adresse suivante : IBM EMEA Director of Licensing IBM Europe Middle-East Africa Tour Descartes La Défense 5 2, avenue Gambetta 92066 - Paris-La Défense CEDEX France Pour le Canada, veuillez adresser votre courrier à : IBM Director of Commercial Relations IBM Canada Ltd. 3600 Steeles Avenue East Markham, Ontario L3R 9Z7 Canada Les informations sur les licences concernant les produits utilisant un jeu de caractères à deux octets (DBCS) peuvent être obtenues par écrit à l'adresse suivante : IBM World Trade Asia Corporation Licensing 2-31 Roppongi 3-chome, Minato-ku Tokyo 106, Japon Le paragraphe suivant ne s'applique ni au Royaume-Uni ni dans aucun autre pays dans lequel il serait contraire aux lois locales. LE PRESENT DOCUMENT EST LIVRE "EN L'ETAT". IBM DECLINE TOUTE RESPONSABILITE, EXPRESSE OU IMPLICITE, RELATIVE AUX INFORMATIONS QUI Y SONT CONTENUES, Y COMPRIS EN CE QUI CONCERNE LES GARANTIES DE QUALITE MARCHANDE OU D'ADAPTATION A VOS BESOINS. Certaines juridictions n'autorisent pas l'exclusion des garanties implicites, auquel cas l'exclusion ci-dessus ne vous sera pas applicable. Le présent document peut contenir des inexactitudes ou des coquilles. Il est mis à jour périodiquement. Chaque nouvelle édition inclut les mises à jour. IBM peut modifier sans préavis les produits et logiciels décrits dans ce document. Les références à des sites Web non IBM sont fournies à titre d'information uniquement et n'impliquent en aucun cas une adhésion aux données qu'ils contiennent. Les informations contenues dans ces sites Web ne sont pas associées à ce produit IBM, et l'utilisation de ces sites se fait à vos propres risques et périls. IBM pourra utiliser ou diffuser, de toute manière qu'elle jugera appropriée et sans aucune obligation de sa part, tout ou partie des informations qui lui seront fournies. Les licenciés souhaitant obtenir des informations permettant : (i) l'échange des données entre des logiciels créés de façon indépendante et d'autres logiciels (dont celui-ci), et (ii) l'utilisation mutuelle des données ainsi échangées, doivent adresser leur demande à : IBM Canada Limited Office of the Lab Director 8200 Warden Avenue Markham, Ontario L6G 1C7 CANADA Ces informations peuvent être soumises à des conditions particulières prévoyant notamment le paiement d'une redevance. Le logiciel sous licence décrit dans ce document et tous les éléments sous licence disponibles s'y rapportant sont fournis par IBM conformément aux dispositions de l'ICA, des Conditions internationales d'utilisation des logiciels IBM ou de tout autre accord équivalent. Les données de performance indiquées dans ce document ont été déterminées dans un environnement contrôlé. Par conséquent, les résultats peuvent varier de manière significative selon l'environnement d'exploitation utilisé. Certaines mesures évaluées sur des systèmes en cours de développement ne sont pas garanties sur tous les systèmes disponibles. En outre, elles peuvent résulter d'extrapolations. Les résultats peuvent donc varier. Il incombe aux utilisateurs de ce document de vérifier si ces données sont applicables à leur environnement d'exploitation. Les informations concernant des produits non IBM ont été obtenues auprès des fournisseurs de ces produits, par l'intermédiaire d'annonces publiques ou via d'autres sources disponibles. IBM n'a pas testé ces produits et ne peut confirmer l'exactitude de leurs performances ni leur compatibilité. Toute question concernant les performances de produits non IBM doit être adressée aux fournisseurs de ces produits. Toute instruction relative aux intentions d'IBM pour ses opérations à venir est susceptible d'être modifiée ou annulée sans préavis, et doit être considérée uniquement comme un objectif. Ce document peut contenir des exemples de données et des rapports utilisés couramment dans l'environnement professionnel. Ces exemples mentionnent des noms fictifs de personnes, de sociétés, de marques ou de produits à des fins illustratives ou explicatives uniquement. Toute ressemblance avec des noms de personnes, de sociétés ou des données réelles serait purement fortuite. LICENCE DE COPYRIGHT : Le présent logiciel peut contenir des exemples de programmes d'application en langage source destinés à illustrer les techniques de programmation sur différentes plateformes d'exploitation. Vous avez le droit de copier, de modifier et de distribuer ces exemples de programmes sous quelque forme que ce soit et sans paiement d'aucune redevance à IBM, à des fins de développement, d'utilisation, de vente ou de distribution de programmes d'application conformes aux interfaces de programmation des plateformes pour lesquelles ils ont été écrits ou aux interfaces de programmation IBM. Ces exemples de programmes n'ont pas été rigoureusement testés dans toutes les conditions. Par conséquent, IBM ne peut garantir expressément ou implicitement la fiabilité, la facilité de maintenance ou le fonctionnement de ces programmes. Toute copie totale ou partielle de ces programmes exemples et des oeuvres qui en sont dérivées doit comprendre une notice de copyright, libellée comme suit : (C) (nom de votre société) (année). Des segments de code sont dérivés des Programmes exemples d'IBM Corp. (C) Copyright IBM Corp. _indiquez l'année ou les années_. All rights reserved. C.1 Marques Les termes qui suivent sont des marques d'International Business Machines Corporation aux Etats-Unis et/ou dans certains autres pays et ont été utilisées dans au moins un des documents de la bibliothèque DB2 UDB. ACF/VTAM iSeries AISPO LAN Distance AIX MVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data AS/400 NetView BookManager OS/390 C Set++ OS/400 C/370 PowerPC CICS pSeries Database 2 QBIC DataHub QMF DataJoiner RACF DataPropagator RISC System/6000 DataRefresher RS/6000 DB2 S/370 DB2 Connect SP DB2 Extensions SQL/400 DB2 OLAP Server SQL/DS DB2 Information Integrator System/370 DB2 Query Patroller System/390 DB2 Universal Database SystemView Distributed Relational Tivoli Database Architecture VisualAge DRDA VM/ESA eServer VSE/ESA Extended Services VTAM FFST WebExplorer First Failure Support Technology WebSphere IBM WIN-OS/2 IMS z/OS IMS/ESA zSeries Les termes qui suivent sont des marques d'autres sociétés qui ont été utilisées dans au moins un des documents de la bibliothèque DB2 UDB : Microsoft, Windows, Windows NT et le logo Windows sont des marques de Microsoft Corporation aux Etats-Unis et/ou dans certains autres pays. Intel et Pentium sont des marques de Intel Corporation aux Etats-Unis et/ou dans certains autres pays. Java, ou toutes les marques et logos incluant Java, sont des marques de Sun Microsystems, Inc. aux Etats-Unis et/ou dans certains autres pays. UNIX est une marque enregistrée de The Open Group aux Etats-Unis et/ou dans certains autres pays. Linux est une marque de Linus Torvalds aux Etats-Unis et/ou dans certains autres pays. D'autres sociétés sont propriétaires des autres marques, noms de produits ou logos qui pourraient apparaître dans ce document.