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


Репликация изменений схемы

В этом разделе описывается репликация изменений схемы в SQL Server 2014 с помощью SQL Server Management Studio или Transact-SQL.

Если в опубликованную статью внести следующие изменения схемы, они по умолчанию распространяются на подписчики Microsoft SQL Server.

  • ALTER TABLE

  • ALTER VIEW

  • ALTER PROCEDURE

  • ALTER FUNCTION

  • ALTER TRIGGER

В этом разделе

Перед началом

Ограничения

  • Инструкция ALTER TABLE ... DROP COLUMN всегда реплицируется для всех подписчиков, чьи подписки содержат удаляемые столбцы, даже при отключенной репликации изменений схемы.

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

Если вы не хотите реплицировать изменения схемы для публикации, отключите репликацию изменений схемы в диалоговом окне Свойства публикации — <публикация> . Дополнительные сведения о доступе к этому диалоговому окну см. в разделе Просмотр и изменение свойств публикации.

Отключение репликации изменений схемы

  1. На странице Параметры подписки диалогового окна Свойства публикации — <публикация> задайте для свойства Реплицировать изменения схемы значение False.

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

    Для распространения только определенных изменений схемы перед изменением схемы установите свойство в True , а после выполнения изменений установите его в False . И наоборот, для распространения всех изменений схемы, за исключением данного изменения, перед изменением схемы установите свойство в False , а после выполнения изменений установите его в True .

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

Можно использовать хранимые процедуры репликации для указания, следует ли реплицировать эти изменения схемы. Используемая хранимая процедура зависит от типа публикации.

Создание публикации моментальных снимков или публикации транзакций без репликации изменений схемы

  1. На издателе в базе данных публикации выполните sp_addpublication (Transact-SQL), указав значение 0 для @replicate_ddl. Дополнительные сведения см. в разделе Create a Publication.

Создание публикации слиянием без репликации изменений схемы

  1. На издателе в базе данных публикации выполните sp_addmergepublication (Transact-SQL), указав значение 0 для @replicate_ddl. Дополнительные сведения см. в разделе Create a Publication.

Временное отключение репликации изменений схемы для публикации моментальных снимков или публикации транзакций

  1. Для публикации с репликацией изменений схемы выполните sp_changepublication (Transact-SQL), указав значение replicate_ddl для @property и значение 0 для @value.

  2. Выполните команду DDL на опубликованном объекте.

  3. (Необязательно) Повторно включите репликацию изменений схемы, выполнив sp_changepublication (Transact-SQL), указав значение replicate_ddl для @property и значение 1 для @value.

Временное отключение репликации изменений схемы для публикации слиянием

  1. Для публикации с репликацией изменений схемы выполните sp_changemergepublication (Transact-SQL), указав значение replicate_ddl для @property и значение 0 для @value.

  2. Выполните команду DDL на опубликованном объекте.

  3. (Необязательно) Повторно включите репликацию изменений схемы, выполнив sp_changemergepublication (Transact-SQL), указав значение replicate_ddl для @property и значение 1 для @value.

См. также:

Внесение изменений в схемы баз данных публикации
Внесение изменений в схемы баз данных публикации