La replica del database in esecuzione 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 procedure seguenti: sp_repldone, sp_replcmds o sp_replshowcmds. Le stored procedure sp_repldone and sp_replcmds vengono utilizzate dall'agente di lettura log per individuare e aggiornare le informazioni sulle transazioni replicate in un database pubblicato. La stored procedure sp_replshowcmds viene utilizzata 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

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>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>