(SQL) SQL (2002 год)

Репликация

Репликация - несмотря на "страшное" слово - это не более чем массированное копирование данных в расшаренный ресурс из одного SQL-сервера утилитой командной строки BCP с последующей загрузкой этих данных в другой SQL-сервер. Вызов утилиты BCP производится через хранимые процедуры, а EnterpriseManager просто позволяет интерактивно настраивать параметры этих процедур/ Но документация на репликацию весьма обширна. И окошек настройки репликации в Enterprice Manager'е, наверное, не менее сотни. Чтобы войти в курс этого дела - я и подготовил эту страничку.

Первое, что нужно настроить для репликации - учетную запись. Любые репликации работают только если SQLServerAgent запущен не под учетной записью LocalSystems, а под пользовательской. Впрочем это надо делать всегда и для самого SQL-сервера - иначе даже TSQL-Debugger просто не удастся запустить - а без этого вам не удастся написать ни одной программы...

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


Это, так сказать, теоретическая часть. А теперь посмотрим как в практическом плане пошагово настроить репликацию с помощью Enterprise Managera. Первым шагом всегда делается публикация (аналогично расшариванию файлов). Она выполняется мастером Create Publication. Мастер проходит последовательно одиннадцать окон в котором выбираются все свойства публикации - например - полная, транзакциональная или сведением - которые потом видны и на 11 вкладках свойств репликации.

Вторым шагом создается собственно подписчик. Инициатором репликации может выступать как сервер-издатель PUSH SUBSCRIPTIONS, так и сервер-подписчик PULL SUBSCRIPTION. Момент начала репликации для PUSH SUBSCRIPTIONS может быть:

а для PUSH SUBSCRIPTIONS: Репликации типа PUSH задаются на книжке в Replication->Publications, а репликации типа PULL вводятся на той базе, которая является подписчиком публикации - в разделе REPLICATION->Subscriptions. Мастер, последовательно проходя через 10 окошек с ответами создает собственно подписку, заполняя 5 вкладок свойств подписки.

Наконец,третьим шагом, необходимо правильно задать свойства сервера-диструбьютора публикации. В эти свойства можно войти так или так. Первоначально они конфигурируются мастером. Когда дистрибьютор будет уже сконфигурирован - в этом же пункте Enterprice Manager'а будут доступны уже не мастер, а непосредственно свойства дистрибьютора. Для дистрибьютора публикации задаются папка - через которую выполняются репликации, а также общий список опубликованных баз и подписчиков. Этими тремя шагами, собственно и будут сконфигурированы параметры агентов, т.е. в Enterprise Meneger'е будут заданы необходимые параметры вызова хранимых процедур, которые вызовут с правильными параметрами утилиты командной строки, которые выгрузят данные в заданную папку, а оттуда загрузят в другой SQL-сервер. Как видите, несмотря на кажущуюся простоту - вариантов настройки здесь очень много. И область для приложения интеллекта в этом деле есть...

Кроме собственно документации, на тему репликации рекомендуется еще прочитать: Утилиты репликации, Публикация через FTP.



Comments ( )
Link to this page: //www.vb-net.com/sql/replication.htm
< THANKS ME>