Этот монитор проверяет состояние агентов слияния для всех подписок на распространителе.
Агент слияния репликации представляет собой служебный исполняемый файл, применяющий первоначальный снимок, находящийся в таблицах баз данных, к подписчикам. Он также выполняет слияние добавочных изменений данных, внесенных на издателе после создания первоначального снимка, и устраняет конфликты в соответствии с настроенными вами правилами или с помощью созданного вами настраиваемого средства.
Сбои при выполнении агента слияния могут возникать вследствие любой из указанных ниже причин.
Агенту слияния не удается подключиться к издателю.
Агенту слияния не удается подключиться к подписчику.
Метаданные репликации слияния были удалены на подписчике.
Это может произойти, если агент слияния не выполнил синхронизацию в течение заданного срока хранения.
Подписка помечена как имеющая истекший срок действия.
Ошибки времени ожидания запроса.
Ошибки подключения к сети.
Агент слияния не может быть запущен из-за нехватки памяти для неинтерактивной кучи рабочего стола.
В исполнительный файл агента переданы неверные параметры.
Чтобы устранить проблему, проверьте следующее:
Агент слияния может подключаться как к издателю, так и к подписчику.
Убедитесь, что учетная запись агента слияния добавлена в фиксированную роль "db_owner" в базах данных издателя и подписчика.
Если для подписки задан срок действия, повторно инициализируйте подписку.
Отсутствует подключение к сети, или при выполнении агента слияния возникли проблемы с соединением между серверами.
Если метаданные подписки удалены на издателе, удалите и повторно создайте подписку.
Это может произойти, если агент слияния не был синхронизирован в течение срока хранения.
Убедитесь, что агенту слияния передаются надлежащие параметры .
Запросите таблицы "msmerge_agents" и "msmerge_history" в базе данных распространения, чтобы получить более подробные сведения о сбое агента. Таблица "Msrepl_errors" также содержит сведения о сбоях агентов.
Проблема кучи рабочего стола
http://support.microsoft.com/kb/949296
Агент слияния репликации
http://msdn.microsoft.com/library/ms147839.aspx
Имя | Описание | Значение по умолчанию |
Включено | Включает или отключает рабочий процесс | Да |
Создает предупреждения | Определяет, создает ли рабочий процесс предупреждение | Да |
Интервал (секунды) | Повторяющийся интервал времени в секундах, по истечении которого запускается рабочий процесс. | 300 |
Показать задания с неизвестным состоянием | Учитывать задания с неизвестным состоянием в показаниях монитора и контексте оповещения. Это повлияет на работоспособность | Нет |
Время ожидания (секунды) | Время ожидания (секунды) | 300 |
Время синхронизации | Время синхронизации |
|
Target | Microsoft.SQLServer.2014.Replication.Distributor | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.Replication.MonitorType.ReplicationAgentState | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor |
<UnitMonitor ID="Microsoft.SQLServer.2014.Replication.Monitor.MergeAgentState" Accessibility="Public" Enabled="true" Target="MS2RD!Microsoft.SQLServer.2014.Replication.Distributor" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.Replication.MonitorType.ReplicationAgentState" ConfirmDelivery="false" RunAs="MSRL!Microsoft.SQLServer.Replication.Monitoring.RunAs.Monitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Replication.Monitor.MergeAgentState.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Health" MonitorTypeStateID="Health" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<SqlTimeout>300</SqlTimeout>
<ConnectionString>$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</ConnectionString>
<XPathName>Merge$Target/Property[Type='MSRL!Microsoft.SQLServer.Replication.Library.GenericDistributor']/ConnectionString$</XPathName>
<ShowJobsWithUnknownState>false</ShowJobsWithUnknownState>
<EstimatedJobDuration>15</EstimatedJobDuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>