[Deprecato] È in corso la replica del database da parte di un altro agente di lettura dei log

Microsoft.SQLServer.2008.AnotherLogReaderIsReplicatingDatabaseRule (Rule)

Knowledge Base article:

Riepilogo

La replica del database è in corso da parte di un altro agente di lettura dei log.

Cause

È in corso da parte di più connessioni il tentativo di eseguire una delle stored procedure seguenti: sp_repldone, sp_replcmds o sp_replshowcmds. Le stored procedure sp_repldone e sp_replcmds vengono usate dall'agente di lettura log per trovare e aggiornare le informazioni sulle transazioni replicate in un database pubblicato. La stored procedure sp_replshowcmds viene usata per la risoluzione di alcuni tipi di problemi relativi alla replica transazionale.

Questo errore viene generato nelle circostanze seguenti:

In una situazione in cui compaiono più agenti, è possibile che uno di loro sia il risultato di un processo orfano.

Si noti che in una situazione in cui sono presenti più agenti, uno di questi può essere il risultato di un processo isolato che non viene visualizzato come processo o agente aggiuntivo in Management Studio.

Soluzioni

I passaggi seguenti possono contribuire alla risoluzione del problema. Se uno dei passaggi consente l'avvio senza errori dell'agente di lettura log, non è necessario completare i passaggi rimanenti.

Risorse esterne

ID evento 18752 di SQL Server

Parametri di cui è possibile eseguire l'override

Nome

Descrizione

Valore predefinito

Abilitato

Abilita o disabilita il flusso di lavoro.

Priorità

Definisce la priorità dell'avviso.

2

Gravità

Definisce la gravità dell'avviso.

2

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
La replica del database in esecuzione da parte di un altro agente di lettura dei log
{0}

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SQLServer.2008.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2008.AnotherLogReaderIsReplicatingDatabaseRule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.2008.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<PublisherName>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</PublisherName>
<EventNumber>18752</EventNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.AnotherLogReaderIsReplicatingDatabaseRule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>