2010-05-26 2 views
0

Справочная информация
Скажем, у меня есть два сервера баз данных, как SQL Server 2008.
One находится в моей локальной сети (ServerLocal), другой находится на удаленном хостинга (ServerRemote).Sql Replication Server: Snapshot против слияния

Я создал базу данных на ServerLocal и имею точную копию этой базы данных на ServerRemote. База данных на ServerRemote является частью веб-приложения, и я бы хотел, чтобы данные были обновлены с данными в базе данных ServerLocal.

ServerLocal способен связываться с ServerRemote, это однонаправленный трафик. Связь с ServerRemote на ServerLocal недоступна.

Текущее решение
Я думал, что это было бы хорошим решением для использования репликации. Поэтому я сделал ServerLocal издателем, и подписки были перенесены на ServerRemote. Это прекрасно работает, когда моментальный снимок переносится на ServerRemote, существующие данные будут удалены, а база данных ServerRemote снова станет точной копией базы данных на ServerLocal.

Проблема
Записи, которые существуют на ServerRemote, которые не существуют на ServerLocal удаляются. Это не важно для большинства моих таблиц, но в некоторых моих таблицах я хотел бы сохранить существующие данные (например, aspnet_users) и обновить записи, если это необходимо.

Какая репликация подходит для моей проблемы?

ответ

0

Вариант C: Транзакционная репликация.

Я делал это раньше, когда у вас есть данные в базе данных подписки и вы не хотите, чтобы он был перезаписан моментальным снимком. Вы можете установить свой первоначальный снимок, чтобы не удалять существующие записи, и либо не создавать записи, которые находятся в издателе (предположим, что они есть), либо создать записи, которые находятся в издателе (предположите, что их нет).

Посмотрите, что было бы правильно для вашей ситуации, или оставьте комментарий с более подробной информацией о том, как вы сначала получаете свои данные в подписчике. Я не слишком хорошо знаком с aspnet_users, и что это. Транзакционная репликация помогает только в том случае, если вы не хотите, чтобы данные в подписчике возвращались к издателю. Если вы хотите, вам придется выполнять слияние репликации.

Смежные вопросы