Поделиться через


Занятие 1. Публикация данных с помощью репликации слиянием

На этом занятии с помощью среды Среда SQL Server Management Studio создается публикация слиянием с целью публикации подмножества таблиц Employee, SalesOrderHeader и SalesOrderDetail в образце базы данных База данных AdventureWorks2008R2. Эти таблицы фильтруются с помощью параметризованных фильтров строк, так что каждая подписка содержит уникальную секцию данных. Также в список доступа к публикации добавляется имя входа SQL Server, используемое агентом слияния. Для работы с этим учебником требуется завершить работу с предыдущим учебником, Подготовка сервера для репликации.

Создание публикации и определение статей

  1. Подключитесь к издателю в среде Среда SQL Server Management Studio, а затем раскройте узел сервера.

  2. Раскройте папку Репликация, щелкните правой кнопкой мыши элемент Локальные публикации и выберите пункт Создать публикацию.

    Будет запущен мастер настройки публикации.

  3. На странице «База данных публикации» выберите База данных AdventureWorks2008R2 и нажмите кнопку Далее.

  4. На странице «Тип публикации» выберите Публикация слиянием и нажмите кнопку Далее.

  5. На странице «Типы подписчиков» убедитесь, что выбран только SQL Server 2008, и нажмите кнопку Далее.

  6. На странице «Статьи» разверните узел Таблицы, выберите SalesOrderHeader и SalesOrderDetail, затем разверните узел Employee, выберите BusinessEntityID или LoginID и нажмите кнопку Далее.

  7. На странице «Фильтрация строк таблицы» нажмите кнопку Добавить, а затем щелкните Добавить фильтр.

  8. В диалоговом окне Добавление фильтра выберите Employee (HumanResources) в поле Выберите таблицу для фильтрации, щелкните столбец LoginID, нажмите кнопку со стрелкой вправо, чтобы добавить столбец в предложение WHERE фильтра запроса, и измените предложение WHERE следующим образом:

    WHERE [LoginID] = HOST_NAME()
    
  9. Щелкните элемент Строка из этой таблицы будет отправлена только одной подписке и нажмите кнопку ОК.

  10. На странице «Фильтрация строк таблицы» щелкните Employee, нажмите кнопку Добавить, а затем щелкните элемент Добавить соединение для расширения выбранного фильтра.

  11. В диалоговом окне Добавление соединения выберите Sales.SalesOrderHeader в Соединяемая таблица, щелкните Создать инструкцию соединения вручную и завершите инструкцию соединения следующим образом:

    ON Employee.BusinessEntityID = SalesOrderHeader.SalesPersonID
    
  12. В поле Укажите параметры соединения выберите Уникальный ключ, а затем нажмите кнопку ОК.

  13. На странице «Фильтрация строк таблицы» щелкните SalesOrderHeader, нажмите кнопку Добавить, а затем щелкните Добавить соединение для расширения выбранного фильтра.

  14. В диалоговом окне Добавление соединения выберите Sales.SalesOrderDetail в поле Соединяемая таблица, нажмите кнопку ОК, а затем кнопку Далее.

  15. Установите флажок Создать моментальный снимок немедленно, снимите флажок Запланировать запуск агента моментальных снимков в следующее время и нажмите кнопку Далее.

  16. На странице «Безопасность агента слияния» щелкните Настройки безопасности, введите <Имя_компьютера>\repl_snapshot в поле Учетная запись процесса, предоставьте пароль для учетной записи и нажмите кнопку ОК. Нажмите кнопку Готово.

  17. На странице «Завершение работы мастера» введите AdvWorksSalesOrdersMerge в поле Имя публикации и нажмите кнопку Готово.

  18. По завершении создания публикации нажмите кнопку Закрыть.

Просмотр состояния создания моментального снимка

  1. Подключитесь к издателю в среде Среда SQL Server Management Studio, а затем раскройте узел сервера и папку Репликация.

  2. В папке «Локальные публикации» щелкните правой кнопкой мыши публикацию AdvWorksSalesOrdersMerge и выберите пункт Просмотр состояния агента моментальных снимков.

  3. Отобразится текущее состояние задания агента моментальных снимков для публикации. Перед тем как перейти к следующему занятию, убедитесь, что задание моментального снимка выполнено успешно.

Добавление имени входа агента слияния в список доступа к публикации

  1. Подключитесь к издателю в среде Среда SQL Server Management Studio, а затем раскройте узел сервера и папку Репликация.

  2. В папке «Локальные публикации» щелкните правой кнопкой мыши публикацию AdvWorksSalesOrdersMerge и выберите пункт Свойства.

    Откроется диалоговое окно Свойства публикации.

  3. Выберите страницу Список доступа к публикации и нажмите кнопку Добавить.

  4. В диалоговом окне «Добавление доступа к публикации» выберите <Имя_компьютера>\repl_merge и нажмите кнопку ОК. Нажмите кнопку ОК.

Следующие шаги

Публикация слиянием успешно создана. Далее будет создана подписка на эту публикацию. См. раздел Занятие 2. Создание подписки на публикацию слиянием.