Guide du service de données Oracle® Solaris Cluster pour Oracle Database

Quitter la vue de l'impression

Mis à jour : Septembre 2014
 
 

Exploitation du détecteur de pannes du serveur Oracle Database

Le détecteur de pannes du serveur Oracle Database envoie une demande au serveur pour connaître l'état de ce dernier.

La propriété pmfadm démarre le détecteur de pannes du serveur et le définit comme hautement disponible. Si le moniteur est arrêté pour une raison quelconque, l'utilitaire PMF le redémarre.

Le détecteur de pannes du serveur comprend les processus suivants.

  • Un processus principal de détection de pannes

  • Un test de détection de pannes du client de base de données

Cette section contient les informations suivantes sur le détecteur de pannes du serveur :

Fonctionnement du détecteur de pannes principal

Le détecteur de pannes principal considère que le fonctionnement est correct si la base de données est en ligne et qu'aucune erreur n'est renvoyée pendant la transaction.

Fonctionnement du test de détection de pannes du client de base de données

Le test de détection des pannes du client de base de données effectue les opérations suivantes :

  1. Surveillance de la partition des journaux de restauration archivés. Reportez-vous à la section Opérations de contrôle de la partition des fichiers journaux de restauration archivés.

  2. Si la partition est fonctionnelle, détermination de l'état de fonctionnement de la base de données. Reportez-vous à la section Opérations visant à déterminer si la base de données est opérationnelle.

Le test utilise la valeur du délai d'attente définie dans la propriété de ressource Probe_timeout pour déterminer le temps à allouer pour parvenir à tester le logiciel Oracle Database.

Opérations de contrôle de la partition des fichiers journaux de restauration archivés

Le test de détection des pannes du client de base de données effectue une recherche sur la vue des performances dynamiques v$archive_dest pour déterminer toutes les destinations possibles des journaux de restauration archivés. Pour chaque destination active, le test détermine si ce dernier est fonctionnel et dispose d'un espace suffisant pour stocker les fichiers journaux de restauration archivés.

  • Si la destination est fonctionnelle, le test détermine l'espace disponible dans le système de fichiers de destination. Si l'espace disponible est inférieur à 10 % des capacités du système de fichiers et à 20 Mo, le test inscrit un message dans syslog.

  • Si l'état de la destination est sur ERROR, le test inscrit un message dans syslog et désactive les opérations visant à déterminer si la base de données est opérationnelle. Les opérations restent interrompues jusqu'à ce que la condition d'erreur soit effacée.

Opérations visant à déterminer si la base de données est opérationnelle

Si la partition des fichiers journaux de restauration archivés est fonctionnelle, le test de détection des pannes du client de base de données effectue une recherche sur la vue des performances dynamiques v$sysstat afin d'obtenir les statistiques des performances de la base de données. Les modifications apportées à ces statistiques indiquent que la base de données est opérationnelle. Si ces statistiques restent identiques après plusieurs requêtes, le test de détection des pannes effectue des transactions de base de données pour déterminer si la base de données est opérationnelle. Ces transactions comprennent la création, la mise à jour et la suppression d'une table dans le tablespace de l'utilisateur.

Le test de détection des pannes du client de base de données effectue toutes ses transactions comme un utilisateur Oracle Database. L'ID de cet utilisateur est spécifié pendant la préparation des noeuds Oracle Solaris Cluster, comme expliqué dans la section Préparation des noeuds Oracle Solaris Cluster.

Actions du détecteur de pannes du serveur suite à l'échec d'une transaction de la base de données

Si une transaction de base de données échoue, le détecteur de pannes du serveur applique une action déterminée par l'erreur à l'origine de l'échec. Pour modifier l'action exécutée par le détecteur de pannes du serveur, personnalisez celui-ci comme expliqué dans la section Personnalisation du détecteur de pannes Serveur HA pour Oracle Database.

Si l'action requiert l'exécution d'un programme externe, ce dernier est exécuté en tant que processus distinct en arrière-plan.

Les actions possibles sont les suivantes :

  • Ignorer. Le détecteur de pannes du serveur ignore l'erreur.

  • Arrêter la surveillance. Le détecteur de pannes du serveur est arrêté sans interrompre la base de données.

  • Redémarrer. Le détecteur de pannes du serveur arrête et redémarre l'entité spécifiée par la valeur de la propriété d'extension Restart_type :

    • Si la propriété d'extension Restart_type est définie sur RESOURCE_RESTART, le détecteur de pannes du serveur redémarre la ressource du serveur de base de données. Par défaut, le détecteur de pannes du serveur redémarre la ressource du serveur de base de données.

    • Si la propriété d'extension Restart_type est définie sur RESOURCE_GROUP_RESTART, le détecteur de pannes du serveur redémarre la ressource du serveur de base de données.


    Remarque -  Le nombre de tentatives de redémarrage peut être supérieur à la valeur de la propriété de ressource Retry_count dans le délai spécifié par la propriété de ressource Retry_interval. Dans ce cas, le détecteur de pannes du serveur tente de basculer le groupe de ressources sur un autre noeud du cluster.
  • Basculer. Le détecteur de pannes du serveur bascule le groupe de ressources de la base de données sur un autre noeud du cluster. Si aucun noeud n'est disponible, la tentative de basculement du groupe de ressources échoue. Si la tentative de basculement du groupe de ressources échoue, le serveur de base de données est redémarré.

Analyse des alertes consignées par le détecteur de pannes du serveur

Oracle Database consigne les alertes dans un fichier journal d'alertes. Le chemin d'accès absolu à ce fichier est spécifié par la propriété d'extension alert_log_file de la ressource SUNW.oracle_server. Le détecteur de pannes du serveur analyse le fichier journal d'alertes à la recherche de nouvelles alertes aux moments suivants :

  • Au démarrage du détecteur de pannes du serveur

  • Chaque fois que le détecteur de pannes du serveur demande l'état du serveur

Si une action est définie pour une alerte journalisée détectée par le détecteur de pannes du serveur, celui-ci exécute l'action en réponse à l'alerte.

Les actions prédéfinies pour les alertes journalisées sont répertoriées dans le Table B–2. Pour modifier l'action exécutée par le détecteur de pannes du serveur, personnalisez celui-ci comme expliqué dans la section Personnalisation du détecteur de pannes Serveur HA pour Oracle Database.