MSSQL 2014 : Impossible de récupérer la base de données en raison de transactions externes non résolues

Microsoft.SQLServer.2014.Could_not_recover_database_due_to_unresolved_transaction_outcomes_1_5_Rule (Rule)

Le processus de récupération a identifié des transactions en attente pour la base de données spécifiée. Il s'agissait soit de transactions distribuées ayant utilisé MS DTC (Microsoft Distributed Transaction Coordinator), soit de transactions de bases de données croisées d'instance unique. Le processus de récupération ne dispose pas de suffisamment d'informations pour valider ou pour restaurer une ou plusieurs de ces transactions.

Knowledge Base article:

Résumé

Le processus de récupération a identifié des transactions en attente pour la base de données spécifiée. Il s'agissait soit de transactions distribuées ayant utilisé MS DTC (Microsoft Distributed Transaction Coordinator), soit de transactions de bases de données croisées d'instance unique. Le processus de récupération ne dispose pas de suffisamment d'informations pour valider ou pour restaurer une ou plusieurs de ces transactions.

Solutions

Effectuez une restauration à partir d'une sauvegarde saine.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Priorité

Définit la priorité de l'alerte.

1

Severité

Définit la gravité de l'alerte.

2

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID3431
Event Source$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2014 : Impossible de récupérer la base de données en raison de transactions externes non résolues
{0}
Event LogApplication
CommentMom2014ID='{3DAD525E-5863-409C-BC77-5E467282D50F}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2014.Could_not_recover_database_due_to_unresolved_transaction_outcomes_1_5_Rule" Target="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2014ID='{3DAD525E-5863-409C-BC77-5E467282D50F}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>3431</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2014.Could_not_recover_database_due_to_unresolved_transaction_outcomes_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>