Секционированная таблица в публикации и однораздельная таблица на подписчике в Sql Replication
Мне было интересно, можем ли мы использовать многораздельные таблицы на уровне публикации и однораздельные на уровне подписчика? Я читал эту статью, Репликация секционированных таблиц и индексов
Ничего не говорится о том, что если у Publication есть разделенная таблица и подписчики не разделены. Это вообще возможно? Если да, как это работает? Потому что я где-то читал, что переключатель раздела просто меняет метаданные этого раздела. Как SQL Server узнает, что есть новые данные для репликации?
1 ответ
Если у вас смешанная настройка, когда у издателя есть настройка раздела, которой нет у подписчика, вы не сможете выполнить ПЕРЕКЛЮЧЕНИЯ раздела. Это приведет к сбою (из-за того, что соответствующая транзакция для переключателя невозможна).
См. Раздел " Поддержка репликации для переключения разделов", второй пункт:
Если у подписчика есть другое определение для многораздельной таблицы, чем у издателя, агент распространителя потерпит неудачу при попытке применить изменения (SWITCH) на подписчике.
Дополнительные комментарии: Это не означает, что вы НЕ МОЖЕТЕ установить микширование, просто вы не можете выполнить SWITCH
на издателя, ЕСЛИ это будет влиять / копировать подписчикам. Во время настройки вашей статьи, sp_addarticle, есть опции для репликации схемы и индексов разделов в разделе @schema_options