Занятие 9. Регистрация, включение и запуск экземпляра

Изменения: 17 июля 2006 г.

На этом занятии будут рассмотрены настройка безопасности экземпляра служб Notification Services, регистрация экземпляра служб Notification Services, который устанавливает ядро Notification Services. Затем этот экземпляр будет включен и запущен.

Обработчик служб Notification Services

Ранее в учебнике были настроены генератор и распространитель для приложения. Эти компоненты запускаются только обработчиком служб Notification Services. Если в приложении использовался внутрипроцессный поставщик событий, этот поставщик также будет запущен обработчиком служб Notification Services.

Обработчиком служб Notification Services является служба Windows, которая создается при регистрации экземпляра на компьютере, или процесс, размещаемый в пользовательском приложении.

При настройке внутрипроцессных поставщиков событий, генераторов и распространителей в файле определения приложения (ADF) указывается имя системы (компьютера), на котором выполняется этот компонент. Необходимо установить и запустить обработчик служб Notification Services на каждом компьютере, указанном в значениях имен систем в файле ADF.

При запуске обработчика служб Notification Services он подключается к этому экземпляру и базе данных приложения, чтобы определить, какие компоненты запускаются и включены ли они. Затем обработчик запускает включенные компоненты.

Дополнительные сведения о службах Notification Services см. в разделе Контроль работы экземпляра и приложений.

Обработчик служб Notification Services подключается к экземпляру и базам данных приложения и выполняет их хранимые процедуры. Чтобы выполнить эти хранимые процедуры, обработчик должен иметь доступ к серверу и соответствующие разрешения базы данных. Эти разрешения предоставляются имени входа с помощью членства в ролях базы данных на экземпляре и базах данных приложения. Дополнительные сведения см. в разделе Настройка разрешений SQL Server для экземпляра служб Notification Services.

Обработчик приложения Weather

При работе с учебником обработчик служб Notification Services будет запущен как служба Windows. При регистрации экземпляра служб Notification Services будет установлена служба с именем NS$Tutorial. Этот экземпляр будет зарегистрирован локально. Имя компьютера соответствует имени, которое указывается в параметре _NSServer_ при создании или обновлении экземпляра служб Notification Services.

При регистрации экземпляра необходимо указать имя пользователя Windows и пароль. Эта служба Windows может использовать учетную запись Windows или имя входа SQL Server, указанные для входа на сервер базы данных. Необходимо добавить пользователя для учетной записи Windows или имени входа SQL Server в базы данных TutorialNSMain и TutorialWeather, а затем добавить этого пользователя в роли баз данных. Эта же самая учетная запись используется при регистрации экземпляра служб Notification Services. Дополнительные сведения о моделях безопасности см. в разделе Вопросы безопасности служб Notification Services.

После регистрации экземпляра и настройки безопасности можно включить и запустить экземпляр служб Notification Services.

Настройка разрешений базы данных для службы Windows

Выполнив следующие шаги, можно настроить разрешения базы данных для учетной записи службы Windows, чтобы подключиться к базам данных TutorialNSMain и TutorialWeather.

Настройка разрешений базы данных для службы Windows

  1. Выберите учетную запись Windows для службы NS$Tutorial.

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

  2. Если есть возможность использовать проверку подлинности Windows, убедитесь, что соответствующей учетной записи разрешено выполнить вход на сервер базы данных. Если проверка подлинности Windows не используется, удостоверьтесь, что существует имя входа SQL Server, которое может использовать эта служба Windows.

    Чтобы добавить новое имя входа в обозревателе объектов, раскройте узел Безопасность, щелкните правой кнопкой мыши элемент Имена входа и выберите команду Создать имя. В этом диалоговом окне можно добавлять учетные записи Windows или создавать учетные записи входа на SQL Server.

  3. В обозревателе объектов создайте пользователя базы данных для входа в базу данных TutorialNSMain и сделайте его членом роли базы данных NSRunService.

    1. Раскройте узел Базы данных, а затем — базу данных TutorialNSMain.
    2. Щелкните правой кнопкой мыши элемент Безопасность и последовательно выберите команды Создать и Пользователь.
    3. В поле Имя пользователя введите имя пользователя базы данных.
      Имя пользователя базы данных, как правило, соответствует его имени входа.
    4. В поле Имя входа введите имя входа, используемое службой NS$Tutorial Windows.
      Имя входа должно в точности соответствовать существующему имени входа в экземпляре компонента Database Engine. Нажмите кнопку обзора (...), чтобы найти имя входа.
    5. В окне Членство в роли базы данных щелкните NSRunService.
    6. Нажмите кнопку ОК.
  4. Создайте пользователя базы данных для входа в базу данных TutorialWeather и сделайте его членом роли базы данных NSRunService.

    1. Раскройте базу данных TutorialWeather.
    2. Щелкните правой кнопкой мыши элемент Безопасность и последовательно выберите команды Создать и Пользователь.
    3. В поле Имя пользователя введите имя пользователя базы данных.
      Имя пользователя базы данных, как правило, соответствует его имени входа.
    4. В поле Имя входа введите имя входа, используемое службой NS$Tutorial Windows.
      Имя входа должно в точности соответствовать существующему имени входа в экземпляре компонента Database Engine. Нажмите кнопку обзора (... ), чтобы найти имя входа.
    5. В окне Членство в роли базы данных щелкните NSRunService.
    6. Нажмите кнопку ОК.

Настройка разрешений на доступ к папке для службы Windows

Поскольку приложение Weather использует для доставки уведомлений протокол доставки «File», необходимо, чтобы учетная запись службы Windows имела необходимые разрешения на доступ к папке, в которую записываются уведомления.

Настройка разрешений на доступ к папке для службы Windows

  1. Откройте проводник Windows.

  2. Найдите папку учебника по службам Notification Services.

    Расположение этой папки по умолчанию: «C:\Program Files\Microsoft SQL Server\90\Samples\Notification Services\tutorial».

  3. Раскройте папку Tutorial, а затем — папку Weather.

  4. Щелкните правой кнопкой мыши папку Notifications и выберите команду Доступ и безопасность.

  5. На вкладке Безопасность убедитесь, что учетная запись Windows, используемая службой Windows NS$Tutorial, обладает разрешениями на запись.

Регистрация экземпляра и создание службы Windows

Выполните перечисленные ниже шаги, чтобы локально зарегистрировать экземпляр служб Notification Services и установить службу Windows с именем NS$Tutorial. На этом шаге службы Notification Services предоставляют разрешения Windows учетной записи службы.

Регистрация экземпляра и создание службы Windows

  1. В обозревателе объектов раскройте узел Службы Notification Services.

  2. Правой кнопкой мыши щелкните элемент Tutorial и последовательно выберите команды Задачи и Зарегистрировать.

  3. Установите флажок Создать службу Windows.

  4. Введите имя и пароль учетной записи для службы Windows с именем NS$Tutorial.

  5. Если для доступа к базам данных используется проверка подлинности SQL Server, то выберите пункт Проверка подлинности SQL Server и введите имя входа и пароль SQL Server. В противном случае не снимайте флажок Проверка подлинности Windows.

  6. Нажмите кнопку ОК, чтобы зарегистрировать экземпляр, создать службу Windows и счетчики производительности.

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

Включение и запуск экземпляра Tutorial

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

Включение и выполнение экземпляра Tutorial

  1. В обозревателе объектов щелкните правой кнопкой мыши экземпляр Tutorial и выберите команду Включить.

  2. Щелкните правой кнопкой мыши экземпляр Tutorial и выберите команду Выполнить.

Если служба не запускается, значит, она не имеет рабочей учетной записи Windows или необходимых разрешений либо не может подключиться к базе данных TutorialNSMain или TutorialWeather. Убедитесь, что учетная запись, используемая этой службой, обладает описанными выше разрешениями. Дополнительные сведения см. в разделе Обеспечение безопасности служб Notification Services.

Проверка состояния экземпляра Tutorial

Чтобы убедиться, что приложение настроено верно и экземпляр Tutorial включен и запущен, просмотрите состояние экземпляра Tutorial.

Проверка состояния экземпляра Tutorial

  1. Щелкните правой кнопкой мыши экземпляр и выберите команду Свойства.

    На странице Приложения можно просмотреть состояние всех компонентов приложения. В столбце Текущее состояние для всех компонентов должно быть показано «Включен». Если компонент имеет состояние «Ожидание включения», подождите 30 секунд и нажмите кнопку Обновить.

    Если состояние «Ожидание включения» не изменилось, системное имя компонента не соответствует имени компьютера, на котором запущен обработчик служб Notification Services. Убедитесь, что значения поля Сервер на страницах Приложение и Службы Windows совпадают.

    На странице Службы Windows можно убедиться, что служба NS$Tutorial выполняется, а в поле Связанные компоненты — просмотреть, какие компоненты включены в службе Windows. Должен отображаться один генератор и один распределитель.

Следующее занятие

Экземпляр Tutorial включен и выполняется, однако он не будет производить уведомления до тех пор, пока не добавлены подписки, подписчики и события. На следующем занятии будут добавлены подписки и подписчики.

Занятие 10. Добавление подписчиков и подписок

См. также

Основные понятия

Учебник по службам Notification Services

Другие ресурсы

Контроль работы экземпляра и приложений
Обеспечение безопасности служб Notification Services
Построение решений на основе служб Notification Services
Введение в службы SQL Server Notification Services

Справка и поддержка

Получение помощи по SQL Server 2005