Existe-t-il un endroit où je peux rechercher des transactions ayant échoué dans SQL Server 2012?
10
Existe-t-il un endroit où je peux rechercher des transactions ayant échoué dans SQL Server 2012?
Non, SQL Server ne conserve aucun historique sur les transactions qui ont été abandonnées / annulées, ce qui est trivial à atteindre et n'introduit pas de problèmes potentiels supplémentaires (comme indiqué dans la réponse de @ ooutwire ). Ou même des transactions qui ont été engagées.
Vous devrez effectuer votre propre journalisation dans le cadre de la gestion des erreurs ou capturer des événements spécifiques liés aux transactions à l'aide de la trace côté serveur ou des événements étendus.
Trace:
Événements prolongés:
Lorsque vous dites des transactions «échouées», que voulez-vous dire exactement?
Si vous souhaitez voir les transactions en cours sur l'instance, vous pouvez utiliser le
sys.dm_tran_active_transactions
DMV.Aussi,
sys.dm_exec_sessions
a leopen_transaction_count
qui peut vous donner ces informations par session. Voici une requête de diagnostic pour extraire tous les processus utilisateur qui ont des transactions ouvertes:Ces informations peuvent également être extraites de
sys.dm_tran_session_transactions
:Si vous souhaitez capturer lorsque les transactions ont été annulées (en supposant que votre désir de transactions "ait échoué"), vous pouvez capturer l'
rollback_tran_completed
événement Événements étendus . Si vous recherchez une vue «tout» des transactions, vous pouvez capturer l'sql_transaction
événement qui, tel que défini par SQL Server, estla source
Vous pouvez utiliser fn_dblog () et trouver les ID de transaction pour les transactions abandonnées ainsi qu'une foule d'autres informations utiles.
Il analyse tous les journaux de transactions dans la partie active du journal. Cela peut être remplacé à l'aide de l'indicateur de trace 2537, qui vous permettra de remonter le plus loin possible au début du plus ancien VLF "non réutilisé". Soyez prudent lorsque vous utilisez cette fonction, car elle analyse le journal de façon aléatoire et le journal ne peut pas changer lorsque l'analyse se produit; ainsi, vous pouvez voir une croissance du journal.
Vous pouvez également utiliser fn_dump_dblog sur un fichier de sauvegarde de journal.
la source