Cycle de vie d'un magasin de données
Le démarrage ou la suppression d'un moteur de messagerie a une incidence sur le cycle de vie de son magasin de données. Des actions appropriées doivent être effectuées sur le magasin de données.
Démarrage du moteur de messagerie
Lorsque vous démarrez un moteur de messagerie, il effectue des contrôles sur les tables qui constituent le magasin de données pour déterminer si elles sont appropriées. Si elles n'existent pas et que vous avez sélectionné l'option Créer des tables lors de la configuration du moteur de messagerie, le moteur de messagerie tente de créer les tables. Si vous n'avez pas sélectionné cette option, l'administrateur de la base de données doit créer les tables à l'avance en utilisant les instructions DDL (data definition language) générées par la commande sibDDLGenerator.
- Si le moteur de messagerie est hébergé par un serveur d'applications autonome, il peut accéder à l'état arrêté. Vous devez redémarrer le serveur d'applications pour démarrer le moteur de messagerie.
- Si le moteur de messagerie est hébergé par un membre de cluster, ce membre est désactivé à des fins de haute disponibilité. Le gestionnaire de haute disponibilité tente de démarrer le moteur de messagerie sur un autre serveur éligible. Si la base de données demeure indisponible, le moteur de messagerie ne peut toujours pas démarrer, le serveur est désactivé pour des raisons de haute disponibilité et le gestionnaire de haute disponibilité tente de démarrer le moteur de messagerie sur un autre serveur éligible. Ainsi, chaque membre du cluster peut être désactivé à des fins de haute disponibilité. Vous devez réactiver les serveurs manuellement pour des raisons de haute disponibilité, en redémarrant les serveurs ou via la console d'administration. Pour plus de détails, consultez Gestion de la haute disponibilité en cas d'échec du démarrage des moteurs de messagerie.
Arrêt de la base de données
Si vous souhaitez arrêter la base de données qui héberge le magasin de données, assurez-vous d'abord que le moteur de messagerie est arrêté. Si le moteur de messagerie est en cours d'exécution et possède des verrous exclusifs sur le magasin de données, l'arrêt de la base de données peut mettre le moteur de messagerie dans un état incohérent car ce dernier peut continuer de s'exécuter et accepter du travail. Le même comportement se produit si la base de données échoue pendant l'exécution du moteur de messagerie.
Vous pouvez configurer le moteur de messagerie et le serveur qui l'héberge pour qu'ils s'arrêtent et redémarrent lorsque la connexion à la base de données est interrompue, afin d'éviter de telles incohérences. Pour configurer ce comportement, définissez la propriété personnalisée sib.msgstore.jdbcFailoverOnDBConnectionLoss sur le moteur de messagerie. Vous pouvez également optimiser votre système afin de réduire la probabilité que le moteur de messagerie ne démarre pas avant que la base de données soit disponible.
Suppression d'un moteur de messagerie
Lorsque vous supprimez un moteur de messagerie, WebSphere Application Server (base) ne supprime pas les tables du magasin de données automatiquement. Si vous souhaitez recréer le même moteur de messagerie, vous devez d'abord supprimer le jeu de tables précédent. Si vous créez un moteur de messagerie avec des tables existantes, ces dernières doivent être vides de sorte que le moteur de messagerie puisse fonctionner correctement. Pour plus d'informations sur la manière de supprimer des tables, reportez-vous à la documentation de votre système de gestion de base de données relationnelle (SGBDR). Cependant, si vous avez créé un magasin de données avec les paramètres par défaut, il n'est pas nécessaire de supprimer les tables précédentes.