Переключение режимов обновления для транзакционной обновляемой подписки

В этом разделе описывается, как переключаться между режимами обновления для обновляемой подписки транзакции в SQL Server 2014 с помощью SQL Server Management Studio или Transact-SQL. Укажите режим обновляемых подписок с помощью мастера создания подписок. Сведения о настройке режима при использовании этого мастера см. в разделе "Просмотр и изменение свойств подписки по запросу".

Перед началом работы

Ограничения и условия

  • Вы можете переключиться с немедленного обновления на обновление в очереди в любое время. Однако после этого вы не сможете вернуться к немедленному обновлению, пока подписчик и издатель не будут подключены и агент обработки очереди не применит все ожидающие сообщения в очереди к издателю.

Рекомендации

  • При обновлении подписки на транзакционную публикацию, которая поддерживает переключение при отказе из одного режима обновления в другой, вы можете программно переключать режимы обновления для обработки ситуаций, когда подключение меняется в течение короткого периода времени. Режим обновления можно задать программным способом и по запросу с помощью хранимых процедур репликации. Дополнительные сведения см. в разделе "Обновляемые подписки" для репликации транзакций.

Использование среды SQL Server Management Studio

Замечание

Чтобы изменить режим обновления после создания подписки, свойство update_mode должно быть установлено на аварийное переключение (позволяет переключиться с немедленного обновления на обновление в очереди) или на переключение очереди (позволяет переключиться с обновления в очереди на немедленное обновление) при создании подписки. Эти свойства задаются автоматически в мастере создания подписок.

Настройка режима обновления для push-подписки

  1. Подключитесь к подписчику в SQL Server Management Studio и разверните узел сервера.

  2. Раскройте папку Репликация , а затем — папку Локальные подписки .

  3. Щелкните правой кнопкой мыши подписку, для которой требуется задать режим обновления, а затем нажмите кнопку "Задать метод обновления".

  4. В диалоговом окне "Установить метод обновления — <Подписчик>: <SubscriptionDatabase>, выберите немедленное обновление или отложенное обновление.

  5. Нажмите кнопку ОК.

Установка режима обновления для подписки на вытягивание

  1. В диалоговом окне "Свойства подписки — <издатель>: PublicationDatabase>" < выберите значение немедленной репликации изменений или изменений очереди для параметра метода обновления подписчика.

  2. Нажмите кнопку ОК.

Дополнительные сведения о доступе к свойствам подписки — <publisher>: <PublicationDatabase> в диалоговом окне "Просмотр и изменение свойств подписки по запросу".

Использование Transact-SQL

Переключение между режимами обновления

  1. Убедитесь, что подписка обеспечивает отказоустойчивость, выполнив sp_helppullsubscription для подписки на получение по запросу или sp_helpsubscription для подписки на получение принудительно. Если значение режима обновления в результирующем наборе равно 3 или 4, то поддерживается отработка отказа.

  2. На подписчике в базе данных подписки выполните sp_setreplfailovermode. Укажите @publisher, @publisher_db, @publication и одно из следующих значений для @failover_mode:

    • queued — отработка отказа в очередь после временной потери подключения.

    • интерпретация — отработка отказа до немедленного обновления при восстановлении подключения.

См. также

Обновляемые подписки для репликации транзакций