Опубликован: 11.12.2006 | Доступ: свободный | Студентов: 5820 / 381 | Оценка: 4.42 / 3.86 | Длительность: 57:15:00
Лекция 28:

Репликация слиянием

Конфигурирование Merge Agent

После создания публикации вам, возможно, потребуется модифицировать поведение агента слияния Merge Agent. Например, вы можете задать, как происходит вызов Merge Agent, выбрав режим, в котором он будет работать. В непрерывном режиме запуск Merge Agent происходит при запуске SQL Server Agent. В режиме расписания (который является предпочтительным режимом) Merge Agent запускается в соответствии с расписанием и переходит в неактивное состояние после доставки всех реплицируемых транзакций. Чтобы сконфигурировать Merge Agent, выполните следующие шаги.

  1. В окне Enterprise Manager раскройте сервер, раскройте папку Replication Monitor, раскройте папку Agents и затем щелкните на папке Merge Agents.
  2. В правой панели Enterprise Manager щелкните правой кнопкой мыши на публикации и выберите из появившегося контекстного меню пункт Agent Properties (Свойства агента).
  3. Появится окно свойств данного агента Merge Agent (рис. 28.26).
     Вкладка General окна свойств Merge Agent

    Рис. 28.26. Вкладка General окна свойств Merge Agent
  4. Щелкните на вкладке Steps (Шаги) (рис. 28.27).
    Вкладка Steps (Шаги) окна свойств Merge Agent

    Рис. 28.27. Вкладка Steps (Шаги) окна свойств Merge Agent
    В этой вкладке вы увидите шаги, которые выполняет данный Merge Agent, когда происходит его вызов. Здесь выводятся и описываются три следующих шага.
    • Merge Agent Startup Message (Сообщение о запуске агента). В таблицу журнала работы агента Log Reader Agent помещается сообщение (таблица MSLogreader_history в дистрибутивной базе данных).
    • Run Agent (Запуск агента). Запуск данного агента в соответствии с заданным расписанием. При работе в непрерывном режиме этот агент работает, пока не будет отключена система.
    • Detect Nonlogged Agent Shutdown (Обнаружено незарегистрированное отключение агента). В таблицу журнала работы агента Log Reader Agent помещается сообщение в случае отключения агента.
  5. Выделите шаг Run Agent и щелкните на кнопке Edit (Редактировать), чтобы появилось диалоговое окно Edit Job Step (Редактирование шага) (рис. 28.28). В этом диалоговом окне вы можете конфигурировать способ вызова Merge Agent.
     Вкладка General диалогового окна Edit Job Step (Редактирование шага)

    Рис. 28.28. Вкладка General диалогового окна Edit Job Step (Редактирование шага)
    Для агента Merge Agent можно сконфигурировать много параметров. Параметры по умолчанию этого агента можно модифицировать в окне Command (Команда) диалогового окна Edit Job Step и в диалоговом окне Replication Agent Profile Details (Детали профиля агента репликации), которое описано ниже в этой лекции. Здесь описаны два параметра, которые вы можете модифицировать в диалоговом окне Edit Job Step. Д
    • Continuous (Непрерывный). Указывает, работает ли Merge Agent в непрерывном режиме. Чтобы задать режим расписания, удалите этот параметр.
    • DistributorSecurityMode (Режим безопасности дистрибьютора). Указывает, какой режим аутентификации использует Merge Agent: SQL или Microsoft Windows 2000.
    Кроме того, вы можете задать в диалоговом окне Edit Job Step другие параметры, такие как LoginTimeout, PollingInterval, QueryTimeout, информацию о дистрибьюторе и подписчиках и Output.
    Дополнительная информация. Описание этих параметров можно найти в SQL Server Books Online. Выполните поиск "Merge Agent, starting" (Merge Agent, запуск) в индексе Books Online.
  6. Закончив модифицирование свойств Merge Agent, щелкните на кнопке OK, чтобы сохранить ваши изменения.

Вы можете модифицировать другие параметры в профиле Merge Agent. Чтобы модифицировать профиль, выполните следующие шаги:

  1. В правой панели Enterprise Manager щелкните правой кнопкой мыши на Merge Agent, как это описано выше в этом разделе, и выберите из появившегося контекстного меню пункт Agent Profiles (Профили агента). Появится диалоговое окно Merge Agent Profiles (рис. 28.29).
    Диалоговое окно Merge Agent Profiles

    Рис. 28.29. Диалоговое окно Merge Agent Profiles
    Отметим, что это диалоговое окно содержит гораздо больше вариантов, чем диалоговое окно Log Reader Agent Profiles, которое вы видели в "Репликация транзакций" . Эти профили обеспечивают широкий диапазон функциональных возможностей, чтобы вы могли выбрать профиль, который наиболее подходит для конкретной конфигурации вашей системы.
  2. Щелкните на кнопке New Profile (Создать профиль), чтобы создать новый профиль. Текущий профиль нельзя модифицировать. В результате появится диалоговое окно Replication Agent Profile Details (Детали профиля агента репликации), ( "Администрирование Microsoft SQL Server" ).
  3. В этом диалоговом окне вы можете модифицировать следующие параметры:
    • BcpBatchSize. Указывает количество строк, которые будут передаваться в операции массового копирования. Он используется в основном для журнального протоколирования.
    • ChangesPerHistory. Указывает пороговое значение, при переходе которого происходит журнальное протоколирование передаваемых и получаемых сообщений.
    • DownloadGenerationsPerBatch. Указывает количество поколений данных, которое будет загружаться в пакете
    • DownloadReadChangesPerBatch. Указывает количество изменений, которое будет считываться в пакете.
    • DownloadWriteChangesPerBatch. Указывает количество изменений, которое будет применяться в пакете.
      иалоговое окно Replication Agent Profile Details (Детали профиля агента репликации)

      Рис. 28.30. иалоговое окно Replication Agent Profile Details (Детали профиля агента репликации)
    • FastRowCount. Указывает тип проверки достоверности, который будет использоваться. Значение 1 указывает быстрый метод, значение 0 – метод подсчета строк (rowcount).
    • HistoryVerboseLevel. Указывает, сколько информации будет протоколироваться в журнале.
    • KeepAliveMessageInterval. Указывает количество секунд между проверкой с помощью метода контрольных импульсов (heartbeat), реализуемого участниками репликации, чтобы определить, функционируют ли остальные участники репликации.
    • LoginTimeout. Указывает допустимое время ожидания в секундах для Merge Agent.
    • MaxDownloadChanges. Указывает максимальное количество получаемых загрузок в одном сеансе.
    • MaxUploadChanges. Указывает максимальное количество отправляемых загрузок в одном сеансе.
    • MaxDeadlockRetries. Указывает максимальное количество попыток агента в случае взаимоблокировки.
    • PollingInterval. Указывает, насколько часто опрашивается журнал транзакций на издателе (для получения новых транзакций).
    • QueryTimeout. Указывает допустимое время ожидания в секундах для запроса.
    • UploadGenerationsPerBatch. Указывает количество поколений отправляемых загрузок, которые будут обрабатываться в одном пакете.
    • UploadReadChangesPerBatch. Указывает количество операций чтения, которое будет обрабатываться в одном пакете.
    • UploadWriteChangesPerBatch.Указывает количество операций записи, которое будет обрабатываться в одном пакете.
    • Validate. Указывает, нужно ли проводить проверку достоверности в конце сеанса.
    • ValidateInterval. Указывает, насколько часто проводится проверка достоверности (если она вообще проводится), когда агент работает в непрерывном режиме.

Если Merge Agent используется в режиме расписания, а не в непрерывном режиме, то он вызывается агентом SQL Server Agent и выполняет, прежде чем закончить работу, то количество изменений, которое указано параметрами MaxUploadChanges и MaxDownloadChanges.

Отключение репликации

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

Удаление push-подписок

Чтобы удалить push-подписку, используйте Enterprise Manager в системе дистри-бьютора для вызова мастера Push Subscription Wizard. После вызова этого мастера появится диалоговое окно Create and Manage Publications. В поле списка Databases and Publications выделите подписку, которую хотите удалить, и затем щелкните на кнопке Delete Publication (Удалить публикацию). Вы получите запрос для подтверждения того, что действительно хотите удалить данную подписку. Щелкните на кнопке Yes, чтобы удалить подписку.

Удаление pull-подписок

Чтобы удалить pull-подписку, используйте Enterprise Manager в системе подписчика для вызова мастера Pull Subscription Wizard. После вызова этого мастера появится диалоговое окно Create and Manage Publications. В поле списка Databases And Publications выделите подписку, которую хотите удалить, и затем щелкните на кнопке Delete Publication. Вы получите запрос для подтверждения того, что действительно хотите удалить данную подписку.

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

Чтобы удалить распространение и публикации, вы должны вызвать мастер Disable Publishing and Distribution Wizard (Отключение публикования и распространения). В первом окне этого мастера вы указываете, что вам нужно: отключить все распространение и все публикации или удалить только публикации. Если выбрать первый вариант, то будет удалено все – публикование, распространение и публикации. Если выбрать второй вариант (принятый по умолчанию), то будут удалены только публикации. Затем вы должны выбрать публикации, которые хотите удалить. После вашего выбора появится окно подтверждения, где вам дается последняя возможность отменить свое решение. Чтобы удалить выбранные вами компоненты репликации, щелкните на кнопке Yes.