Surveillance de l’expédition des journaux de transactions (Transact-SQL)

S'applique à :SQL Server

Une fois l'envoi de journaux configuré, vous pouvez contrôler les informations d'état de l'ensemble des serveurs d'envoi de journaux. L'historique et l'état des opérations d'expédition des journaux de transactions sont toujours enregistrés localement par les tâches d'expédition des journaux de transactions. L'historique et l'état de l'opération de sauvegarde sont stockés sur le serveur principal, tandis que l'historique et l'état des opérations de copie et de restauration sont stockés sur le serveur secondaire. Si vous avez implémenté un serveur moniteur distant, ces informations sont également stockées sur le serveur moniteur.

Vous pouvez configurer des alertes qui se déclencheront si les opérations d’expédition des journaux de transactions ne se produisent pas comme prévu. Les erreurs sont générées par une tâche d’alerte qui surveille l’état des opérations de sauvegarde et de restauration. Vous pouvez définir des alertes qui indiquent à l'opérateur l'occurrence de ces erreurs. Si un serveur moniteur est configuré, une tâche d'alerte s'exécute sur le serveur moniteur, qui signale les erreurs pour toutes les opérations de la configuration de l'expédition des journaux. Si aucun serveur moniteur n'est défini, un travail d'alerte s'exécute sur l'instance du serveur principal qui surveille la sauvegarde. Si aucun serveur moniteur n'est défini, un travail d'alerte s'exécute également sur chaque instance de serveur secondaire pour surveiller les opérations de copie et de restauration.

Important

Pour surveiller une configuration d'expédition des journaux de transactions, vous devez ajouter le serveur de surveillance lorsque vous activez l'expédition des journaux de transactions. Si vous ajoutez plus tard un serveur de surveillance, vous devez supprimer la configuration d'expédition des journaux, puis la remplacer par une nouvelle configuration incluant un serveur de surveillance. Pour plus d’informations, consultez Configurer l’expédition de journaux (SQL Server). De plus, une fois le serveur de surveillance configuré, il ne peut pas être changé sans supprimer au préalable l’expédition des journaux de transactions.

Tables d'historique contenant les informations d'analyse

Les tables d'historique d'analyse contiennent des métadonnées stockées sur le serveur moniteur. Une copie des informations spécifiques à un serveur principal ou secondaire est également stockée localement.

Vous pouvez interroger ces tables pour surveiller l’état d’une session de livraison des journaux de transactions. Pour connaître l'état de l'envoi des journaux, par exemple, vérifiez l'état et l'historique du travail de sauvegarde, du travail de copie et du travail de restauration. Vous pouvez afficher l’historique spécifique de la livraison des journaux de transactions ainsi que les détails des erreurs en interrogeant les tables de surveillance suivantes.

Table de charge de travail Description
log_shipping_monitor_alert Stocke l’ID de la tâche d’alerte.
log_shipping_monitor_error_detail Stocke les détails des erreurs des travaux d’expédition des journaux de transactions. Vous pouvez interroger cette table pour identifier les erreurs d'une session d'agent. Vous pouvez également trier les erreurs en fonction de leurs date et heure d'enregistrement. Chaque erreur est consignée sous la forme d'une séquence d'exceptions, et plusieurs erreurs (séquences) peuvent être consignées pour chaque session d'agent.
log_shipping_monitor_history_detail Contient les détails de l’historique des agents d’expédition des journaux de transactions. Vous pouvez interroger cette table pour consulter l'historique d'une session d'agent.
log_shipping_monitor_primary Contient un enregistrement de surveillance pour la base de données principale dans chaque configuration d’expédition des journaux de transactions, y compris des informations sur le dernier fichier de sauvegarde et le dernier fichier restauré, utiles à la surveillance.
log_shipping_monitor_secondary Contient un enregistrement d'analyse pour chaque base de données secondaire, y compris des informations sur le dernier fichier de sauvegarde et le dernier fichier restauré, qui sont utiles pour l'analyse.

Procédures stockées pour la surveillance de l'expédition des journaux

Les informations de surveillance et d’historique sont stockées dans les tables de msdb, auxquelles il est possible d’accéder à l’aide des procédures stockées du transport des journaux de transactions. Exécutez les procédures stockées suivantes sur les serveurs indiqués dans le tableau ci-dessous.

Procédure stockée Description Exécutez cette procédure sur
sp_help_log_shipping_monitor_primary Retourne les enregistrements de surveillance pour la base de données primaire spécifiée depuis la table log_shipping_monitor_primary. Serveur de surveillance ou serveur principal
sp_help_log_shipping_monitor_secondary Retourne les enregistrements de surveillance de la base de données secondaire spécifiée à partir de la table log_shipping_monitor_secondary. Serveur de supervision ou serveur secondaire
sp_help_log_shipping_alert_job Renvoie l’ID de la tâche d’alerte. Serveur moniteur, serveur principal ou serveur secondaire si aucune surveillance n'est définie
sp_help_log_shipping_primary_database Extrait les paramètres de la base de données primaire et affiche les valeurs des tables log_shipping_primary_databases et log_shipping_monitor_primary . Serveur principal
sp_help_log_shipping_primary_secondary Extrait les noms des bases de données secondaires d'une base de données principale. Serveur principal
sp_help_log_shipping_secondary_database Extrait les paramètres des bases de données secondaires depuis les tables log_shipping_secondary, log_shipping_secondary_databases et log_shipping_monitor_secondary tables. Serveur secondaire
sp_help_log_shipping_secondary_primary (Transact-SQL) Cette procédure stockée récupère les paramètres d'une base de données primaire donnée sur le serveur secondaire. Serveur secondaire