Каков хороший способ автоматической синхронизации базы данных SQL Server 2008 из базы данных 2005 года? - PullRequest
2 голосов
/ 19 апреля 2010

Хорошо, сценарий ... два сервера в совершенно разных частях Интернета.

Базе данных SQL Server 2008 просто необходимо получать обновления данных и изменения схемы. Не нужно ничего отправлять в базу данных 2005 года. По сути, просто выполняйте автоматическое получение данных и схемы настолько эффективно, насколько это возможно, по расписанию.

База данных довольно большая .... но изменения в день, вероятно, составляют около 20/30 мегабайт данных /

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

Я немного посмотрел на Sync Framework, думаю, он может делать то, что я хочу, но кажется немного болезненным и требует немного работы, чтобы начать работу. Мне интересно, есть ли какие-нибудь инструменты, чтобы сделать это проще?

или ?? не совсем уверен, какие у меня варианты.

Ответы [ 3 ]

2 голосов
/ 19 апреля 2010

Я не могу запустить ни один из встроенных репликация в базе данных 2005 года.

Есть ли причина для такого ограничения? Репликация - это способ решения вашей проблемы. Без инфраструктуры репликации вы просто не сможете обнаружить изменения данных или схемы. Есть только два способа обнаружить изменения: либо с помощью триггеров и таблиц отслеживания (и это с помощью репликации слиянием), либо с помощью журнала базы данных (а это и есть репликация транзакций).

Для самой Sync Framework, если она будет использоваться, потребуется либо отслеживание изменений, либо сбор данных изменений. Но это технологии, специфичные для 2008 года, и они на самом деле являются ничем иным, как замаскированной репликацией (они используют ту же инфраструктуру, что и Merge, и соответственно Transactional Replication).

Даже если вы захотите свернуть свои собственные, вы быстро обнаружите, что отправка изменений - это тривиальная часть, например. используя Service Broker для надежной семантики доставки. Но настоящая трудная проблема заключается в обнаружении изменений, а это трудно . Разобрать «довольно огромную» базу данных через Интернет для обнаружения изменений просто не получится. Поэтому опора на встроенную инфраструктуру для обнаружения изменений, а именно на две формы репликации, является очевидным решением.

1 голос
/ 19 апреля 2010

возможно, эти вопросы помогут вам:

Microsoft Sync Framework или репликация

Решение для архивирования данных SQL Server

Существует ли способ репликации некоторых данных, а не всех данных в БД, путем репликации сервера sql?

вы можете создать приложение, которое сгенерирует скрипт из ваших измененных данных в ваш любимый период, а затем запустить этот скрипт на целевом сервере.

1 голос
/ 19 апреля 2010

Не могли бы вы автоматизировать сравнение и сравнение данных в RedGate? http://www.red -gate.com / products / SQL_Compare / index.htm ... вы можете хотя бы попробовать это с 14-дневной пробной версией и посмотреть, стоит ли это инвестиций. Гораздо дешевле, чем сам инструмент, ИМХО.

...