MSSQL 2016: не удалось восстановить базу данных из-за неразрешенных результатов транзакций

Microsoft.SQLServer.2016.Could_not_recover_database_due_to_unresolved_transaction_outcomes_1_5_Rule (Rule)

Процессом восстановления обнаружены незавершенные транзакции для указанной базы данных. Это были распределенные транзакции, в которых использовался координатор распределенных транзакций (Майкрософт) или транзакций между базами данных для одного экземпляра. Процессу восстановления недостаточно сведений для фиксации или отката одной или нескольких таких транзакций.

Knowledge Base article:

Сводка

Процессом восстановления обнаружены незавершенные транзакции для указанной базы данных. Это были распределенные транзакции, в которых использовался координатор распределенных транзакций (Майкрософт) или транзакций между базами данных для одного экземпляра. Процессу восстановления недостаточно сведений для фиксации или отката одной или нескольких таких транзакций.

Решения

Выполните восстановление из известной хорошей резервной копии.

Переопределяемые параметры

Название

Описание

Значение по умолчанию

Включено

Включает или отключает рабочий процесс.

Да

Приоритет

Определяет приоритет предупреждения.

1

Серьезность

Определяет серьезность предупреждения.

2

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID3431
Event Source$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2016: не удалось восстановить базу данных из-за неразрешенных результатов транзакций
{0}
Event LogApplication
CommentMom2016ID='{3DAD525E-5863-409C-BC77-5E467282D50F}';MOM2016GroupID={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.2016.Could_not_recover_database_due_to_unresolved_transaction_outcomes_1_5_Rule" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2016ID='{3DAD525E-5863-409C-BC77-5E467282D50F}';MOM2016GroupID={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="SQL2016Core!Microsoft.SQLServer.2016.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.2016.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>