Поделиться через


Как указать интерактивное разрешение конфликтов для статей публикации слиянием (программирование репликации на языке Transact-SQL)

Репликация Microsoft SQL Server использует интерактивный арбитр конфликтов, который позволяет разрешать конфликты вручную при проведении синхронизации по запросу в диспетчере синхронизации Microsoft Windows. Можно программно указать, чтобы подписчик использовал этот графический интерфейс для разрешения конфликтов статей, если создается подписка по запросу на публикацию слиянием. В интерактивном арбитре конфликтов отображаются только конфликты статей, поддерживающих этот параметр. Для работы интерактивного механизма разрешения конфликтов необходим диспетчер синхронизации Windows. Если синхронизация выполнена вне диспетчера синхронизации Windows (по расписанию или по запросу в среде SQL Server Management Studio или мониторе репликации), конфликты разрешаются автоматически без вмешательства пользователя с помощью метода разрешения конфликтов по умолчанию, указанному для статьи. Дополнительные сведения см. в разделе Интерактивное разрешение конфликтов.

Создание подписки по запросу на публикации слиянием, использующую интерактивный арбитр конфликтов

  1. На издателе в базе данных публикации выполните хранимую процедуру sp_helpmergearticle, указав параметр @publication. Запомните значение allow_interactive_resolver для каждой статьи в результирующем наборе, для которого будет использоваться интерактивный арбитр конфликтов.

    • Если это значение равно 1, будет использоваться интерактивный арбитр конфликтов.

    • Если значение равно 0, необходимо вначале включить интерактивный арбитр конфликтов для каждой статьи. Для этого выполните хранимую процедуру sp_changemergearticle, указав параметры @publication, @article, значение allow_interactive_resolver в параметре @property и значение true в параметре @value.

  2. В базе данных подписки на издателе выполните процедуру sp_addmergepushsubscription_agent. Дополнительные сведения см. в разделе Как создавать подписки по запросу (программирование репликации на языке Transact-SQL).

  3. На подписчике в базе данных подписки выполните хранимую процедуру sp_addmergepullsubscription_agent, указав следующие параметры.

  4. В базе данных публикации на издателе выполните процедуру sp_addmergepushsubscription_agent.

Определение статьи, поддерживающей интерактивный арбитр конфликтов

См. также

Основные понятия