Настройка Репликации В Sql 2008

В моем примере я буду настраивать одностороннюю репликацию на уровне транзакции.

Имейте в виду, что существуют и другие типы репликации данных SQL. Сначала вам необходимо убедиться, что компонент репликации SQL Server установлен на обоих серверах.



1. На сервере распространения создайте локальную публикацию.

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

В нашем случае это будет транзакционная публикация.

1.3. Указываем опубликованные таблицы или другие объекты 1.4. При необходимости мы можем установить фильтр, по которому будут отбираться данные для репликации.

1,5. На странице Snapshot Agent ничего не отмечаем 1.6. На странице «Безопасность агента» укажите учетные данные для агента моментальных снимков и агента чтения журнала.

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

1.7. На странице Действия мастера установите флажок Создать публикацию.

1.8. На последней странице укажите название публикации.

1.9. В свойствах вновь созданной публикации задайте папку для хранения снимков (Поместить файлы в следующую папку), которую необходимо предварительно создать.

Папка моментальных снимков представляет собой обычную общую папку.

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

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

В нашем случае необходимо предоставить полные права на эту папку учетной записи, под которой запускается SQL Server Agent на сервере распространения.

Далее в свойствах созданной локальной публикации выберите пункт «Параметры подписки» и установите флажок «Сжать снимок» (это снизит нагрузку на сеть), а для параметра «Разрешить анонимные подписки» установите значение «false».

.

1.10. В SQL Server Management Studio на сервере распространения перейдите в раздел Безопасность — Логины и добавьте пользователя, от имени которого на этом сервере запускается агент моментальных снимков.

В поле База данных по умолчанию выбираем базу данных, которую реплицируем, и во вкладке User Mapping назначаем этому пользователю роль db_owner для реплицируемой базы данных, а также для базы данных Distribution, созданной в процессе создания репликации.



2. Создайте локальную подписку на сервере подписчиков.

2.1. Выбираем сервер распространения и нужную нам публикацию 2.2. На странице «Расположение агента распространителя» укажите, где будет запущен агент распространителя.

В случае запуска всех агентов на сервере распространения мы получим упрощенное администрирование, но и повышенную нагрузку на сам сервер распространения.

Мы выбираем второй вариант — Запускать каждый агент на своем Подписчике (pull-подписки), что позволит нам дополнительно не нагружать наш основной сервер.

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

2.4. На странице Безопасность агента распространителя укажите учетные данные для запуска агента распространителя.

Вы можете указать учетную запись, под которой запускается агент SQL Server. Затем мы предоставляем этой учетной записи разрешение на чтение папки моментальных снимков.

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

2.5. На странице Расписание синхронизации указываем расписание синхронизации для каждого Агента.

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

2.6. На странице Initialize Subscriptions указываем инициализацию при первой синхронизации.

2.7. На странице Действия мастера установите флажок Создать подписку(и).



3. Запускаем репликацию, проверяем.

3.1. На сервере распространения мы выполним повторную инициализацию всех подписок.

Укажем, что необходимо создать новый снимок.

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

3.2. Мы можем отслеживать состояние репликации и запускать репликацию с помощью утилиты Replication Monitor, а также с помощью заданий агента SQL Server. Теги: #Системное администрирование #sql-сервер

Вместе с данным постом часто просматривают: