2010-07-14 4 views
1

У меня был опыт работы с MSSQL Server всего 6 лет назад, поэтому теперь у меня есть только базовые знания о его работе.Непрерывно синхронизировать таблицы между двумя базами данных

Проблема, с которой я столкнулся, заключается в синхронизации баз данных между двумя прямыми CRM (NopCommerce и Rainbow Portal, если кто-то любопытен), работающими на одном сервере БД. Данные, которые меня интересуют, распространены среди 7 таблиц в одном БД и 5 в другом. Идея состоит в том, чтобы иметь два веб-приложения с одинаковыми данными с обновлениями, которые мгновенно распространяются на другие.

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

Мне неизвестны все возможности SQL Server, поэтому я открыт для предложений относительно того, что является лучшим и быстрым способом достижения цели. Нужно ли писать больше триггеров? Должен ли я создать приложение «наблюдателя»? Есть ли какой-то встроенный механизм для этого?

Спасибо!

ответ

1

Вы должны смотреть на репликации SQL, и/или с помощью служб SSIS для интеграции ETL и планирования и т.д.

Триггеры (особенно cross DB) может быть беспорядочным для поддержки и отладки - вы также можете рассмотреть возможность загрузки данных в отдельную (третью) промежуточную базу данных, а затем распространить данные в ваши другие 2 базы данных?

(Другие альтернативы включают синхронное и асинхронное зеркалирование, для чего требуется, чтобы все БД были синхронизированы, и отправка журналов - также полная БД - это было бы только одностороннее, как правило, для избыточности - они вряд ли будут полезно для вашей цели, хотя)

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