Миграция (компонент Service Broker)

Стандартный процесс миграции приложения компонента Service Broker подразумевает перемещение базы данных, содержащей приложение, в другой экземпляр компонента Database Engine. Многие аспекты приложения компонента Service Broker перемещаются вместе с базой данных. Некоторые из них в новом расположении необходимо создавать или настраивать заново.

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

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

  • Настройте необходимые имена входа.

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

  • С помощью инструкции CREATE DATABASE или ALTER DATABASE активируйте доставку сообщений с помощью компонента Service Broker в восстановленной базе данных и установите другой идентификатор экземпляра брокера. Идентификатор экземпляра брокера должен одновременно использоваться только одной базой данных в сети. Обычно идентификатор экземпляра не меняется, если база данных восстанавливается из резервной копии, идентичной исходной базе данных. Например, идентификатор экземпляра брокера не меняется при присоединении базы данных в следующих случаях.

    • Восстановление базы данных.

    • Создание зеркальной пары.

    • Настройка доставки журналов на резервный сервер.

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

  • Конечные точки компонента Service Broker и установки безопасности транспорта применяются к экземпляру в целом, а не к конкретной базе данных. Присоединение базы данных к новому экземпляру не влияет на конечные точки или безопасность транспорта для этого экземпляра. Если служба отправляет или получает сообщения через сеть, убедитесь, что у нового экземпляра есть конечная точка компонента Service Broker. Также необходимо убедиться, что безопасность транспорта для экземпляра настроена так, как того требует приложение.

После перемещения базы данных проведите поиск ошибок компонента Service Broker. Для этого запустите служебную программу ssbdiagnose. Дополнительные сведения см. в разделе Программа ssbdiagnose.