2015-10-15 2 views
0

У меня есть следующий сценарий:над репликацией

-Server 1 есть база данных data_server1 и транзакционная публикация (по Интернету) под названием TANS_PUB (9 таблиц статья)

-Server 2 является абонент для TANS_PUB и иметь локальную базу данных «data_server2»

Примечание: data_server1 и data_server2 имеют ту же структуру (схему) и транс работу репликации очень хорошо

Теперь в server2 я создал публикацию слияния (через Интернет и для всех таблиц в виде статей) под названием MERG_PUB, и я делаю server1 подписчиком. этот паб слияния находится от data_server2 до data_server1_2 в server1. эта репликация также работает очень хорошо.

проблема: , если один из 9 таблицы (в server1) (Exemple TAB1), обновляется в ручную или с помощью программы, ТАВ1 в server2 обновляется (по репликации на основе TANS_PUB), но TAB1 в data_server1_2 (server1) не обновляется :-((в этом случае MERG_PUB не работает), обратите внимание, если я обновляю TAB1 в server2 вручную или по программе TAB1 в data_server1_2 (server1) хорошо обновляется !!!!!

вы можете помочь, пожалуйста ????

1000 благодаря

ответ

2

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

Чтобы облегчить эту проблему, пожалуйста, установите свойство Объединить статьи @published_in_tran_pub к верно для всех Merge статей, участвующих в транзакционной публикации.

USE MergePublicationDB 

EXEC sp_changemergearticle 
    @publication = 'MergePublicationName', 
    @article = 'MergeArticleName', 
    @property = N'published_in_tran_pub', 
    @value = N'true' 
GO 
Смежные вопросы