Исходный моментальный снимок для публикации пока недоступен

Microsoft.SQLServer.2008.InitialSnapshotForPublicationIsNotYetAvailableRule (Rule)

Knowledge Base article:

Сводка

Во время ожидания события доступа к кэшу статьи в SQL Server произошла ошибка.

Причины

Описанная выше ошибка появляется при следующих обстоятельствах.

Для репликации слиянием.

Эта ошибка возникает при создании или повторной инициализации подписки слиянием, если агент слияния запущен раньше агента моментальных снимков или до завершения работы этого агента.

Для репликации транзакции.

Создана или повторно инициализирована транзакционная подписка при использовании настройки Да, инициализировать схему и данные, а агент распространителя запущен раньше агента моментальных снимков или до завершения работы этого агента. Эта ошибка возникает, только если данная подписка является единственной подпиской, связанной с агентом распространителя, или если все подписки, связанные с агентом распространителя, находятся в описанном выше состоянии. Как только в одной из подписок, связанной с данным агентом распространителя, появляется доступный моментальный снимок, выдается сообщение журнала агента "Нет доступных реплицированных транзакций" или сообщается номер транзакций и команд, доставленных для других подписок, связанных с данным агентом. Если в транзакционной публикации есть только одна статья, которая соответствует указанным выше критериям, выдается сообщение об ошибке 21076, "Исходный моментальный снимок статьи пока недоступен".

Решения

Если связанный агент моментальных снимков не запускался после создания данной подписки или с момента последней повторной инициализации подписки, то потребуется запустить агент моментальных снимков и позволить ему завершить свою работу до запуска агента слияния или распространения.

Если агент моментальных снимков не завершил свою работу, проверьте журнал агента моментальных снимков на наличие ошибок и устраните эти ошибки. При необходимости можно добавить журнал к агенту моментальных снимков, чтобы узнать, могут ли быть возвращены дополнительные сведения для каких-либо ошибок, сообщения о которых получены.

Внешнее

Как позволить агентам репликации вести журналы в файлах вывода в SQL Server

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Исходный моментальный снимок для публикации пока недоступен
{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>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>