Die Anfangsmomentaufnahme für die Veröffentlichung ist noch nicht verfügbar

Microsoft.SQLServer.2008.InitialSnapshotForPublicationIsNotYetAvailableRule (Rule)

Knowledge Base article:

Zusammenfassung

SQL Server hat beim Warten auf das Artikelcache-Zugriffsereignis einen Fehler protokolliert.

Ursachen

Dieser Fehler tritt unter den folgenden Umständen auf:

Bei Mergereplikation:

Dieser Fehler wird angezeigt, wenn Sie ein Mergeabonnement erstellt oder erneut initialisiert haben und den Merge-Agent gestartet haben, bevor Sie den Momentaufnahme-Agent gestartet haben bzw. bevor der Momentaufnahme-Agent abgeschlossen wurde.

Bei Transaktionsreplikation:

Sie haben ein Transaktionsabonnement erstellt oder erneut initialisiert, das mit der Option Ja, Schema und Daten auf dem Abonnenten sofort initialisieren erstellt wurde, und den Verteilungs-Agent gestartet, bevor Sie den Momentaufnahme-Agent gestartet haben bzw. bevor der Momentaufnahme-Agent abgeschlossen wurde. Dieser Fehler wird nur angezeigt, wenn das Abonnement das einzige Abonnement ist, das im oben erwähnten Status dem Verteilungs-Agent zugeordnet ist. Sobald ein dem Verteilungs-Agent zugeordnetes Abonnement über eine verfügbare Momentaufnahme verfügt, wird von der Agent-Verlaufsmeldung entweder anzeigt, dass keine replizierten Transaktionen verfügbar sind, oder es wird die Anzahl von Transaktionen und Befehlen angezeigt, die für andere Abonnements zugestellt werden, die diesem Agent zugeordnet sind. Wenn nur ein Artikel in einer Transaktionsveröffentlichung vorhanden ist und dieser Artikel die oben beschriebenen Kriterien erfüllt, wird stattdessen der Fehler 21076 angezeigt: "Die Anfangsmomentaufnahme für den Artikel ist noch nicht verfügbar".

Lösungen

Wenn der zugeordnete Momentaufnahme-Agent seit Erstellung des Abonnements noch nicht gestartet wurde, oder wenn der Agent nicht gestartet wurde, seit Sie das Abonnement zuletzt erneut initialisiert haben, müssen Sie den Momentaufnahme-Agent starten und abschließen, bevor Sie den Merge-Agent oder den Verteilungs-Agent starten.

Wenn der Momentaufnahme-Agent die Momentaufnahme nicht fertig generiert, überprüfen Sie den Verlauf des Momentaufnahme-Agents auf Fehler, und sorgen Sie für deren Behebung. Sie können ggf. dem Momentaufnahme-Agent ein Protokoll hinzufügen, um festzustellen, ob weitere Einzelheiten für angezeigte Fehler zurückzugeben werden können.

Extern

Aktivieren von Replikations-Agents für die Protokollierung in den Ausgabedateien in SQL Server

Überschreibbare Parameter

Name

Beschreibung

Standardwert

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Priorität

Definiert die Warnungspriorität.

1

Schweregrad

Definiert den Warnungsschweregrad.

1

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Die Anfangsmomentaufnahme für die Veröffentlichung ist noch nicht verfügbar
{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.InitialSnapshotForPublicationIsNotYetAvailableRule" 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>21075</EventNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.InitialSnapshotForPublicationIsNotYetAvailableRule.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>