Назад | Перейти на главную страницу

Репликация ВСЕХ баз данных в SQL SERVER 2005

У нас есть SQL SERVER 2005 с 700 работающими базами данных.

Наша идея - реплицировать все базы данных на сервере с помощью SQL SERVER Replication Services (http://msdn.microsoft.com/en-gb/library/ms151314(SQL.90).aspx), чтобы одновременно работали два идентичных сервера данных.

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

Как я могу автоматически публиковать и подписывать все базы данных между двумя серверами?

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

Чтобы иметь что-то автоматическое, вам понадобится что-то, что обрабатывает репликацию на уровне диска.

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

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