Команда nscontrol disable

Изменения: 5 декабря 2005 г.

Отключает указанный экземпляр, приложение или компонент служб Microsoft SQL Server Notification Services.

Синтаксис

nscontrol disable 
    [-nologo]
    [-help]
    [<component> [...n ]]
        -name instanceName
    [-server databaseServer]
    [-application applicationName]
    [-sqlusername sqlUserName -sqlpassword sqlPassword]

< component > ::=
    -events [systemName]
    | -generator
    | -distributor [systemName]
    | -subscriptions
    | -subscribers 

Аргументы

  • -nologo
    Блокирует вывод на экран сведений о продукте и его версии, отображаемых при выполнении команды nscontrol.
  • -help
    Отображает синтаксис команды.
  • <компонент>
    Имя отключаемого компонента. При выполнении команды nscontrol disable можно указать ноль или положительное количество компонентов.

    Если компонент не указан, то отключаются все компоненты экземпляра или приложения. Если указано имя компонента, а имя приложения с помощью аргумента -application не указано, то отключаются все совпадающие компоненты во всех приложениях экземпляра.

    <компонент> может быть любым из следующих аргументов:

    Аргумент Описание

    -distributor [systemName]

    Отключает распространение экземпляра или приложения. Если указано имя системы распространителя, то отключаются только распространители в этой системе. В противном случае отключаются все распространители экземпляра или приложения.

    -events [systemName]

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

    -generator

    Отключает генератор.

    -subscriptions

    Отключает управление подпиской.

    -subscribers

    Отключает управление подписчиками для экземпляра служб Notification Services.

  • -nameinstanceName
    Определяет имя экземпляра, на который распространяется действие команды nscontrol disable. Если аргумент -name указан без указания аргумента -application или компонента, то команда nscontrol отключает все приложения и компоненты экземпляра.

    Сведения об использовании аргумента -name с аргументом -server см. в описании аргумента -server.

  • -serverdatabaseServer
    Определяет имя сервера, на котором размещаются базы данных экземпляра и приложений. Если для размещения баз данных используется именованный экземпляр SQL Server, необходимо указать имя сервера и имя экземпляра в формате <имя_сервера>\<имя_экземпляра>.

    При запуске команды nscontrol disable в системе, где экземпляр был ранее зарегистрирован с помощью команды nscontrol register, используйте аргумент -name, а не аргумент -server. Программа nscontrol определяет имя экземпляра службы SQL Server, считывая сведения об экземпляре из реестра.

    Если запуск программы nscontrol disable выполняется в системе, где экземпляр не зарегистрирован, необходимо использовать оба аргумента -name и -server, поскольку программе nscontrol необходимо как имя экземпляра службы Notification Services, так и имя экземпляра SQL Server, чтобы найти базу данных экземпляра.

    Если указан аргумент -server, то программа nscontrol не учитывает значения реестра для экземпляра.

  • -applicationapplicationName
    Имя приложения, в котором отключается один или несколько компонентов. Если имя приложения не указано, отключаются компоненты всех приложений, размещенных в экземпляре.
  • -sqlusernamesqlUserName
    Определяет имя входа SQL Server, используемое для подключения к SQL Server.

    Если для подключения к SQL Server используется проверка подлинности SQL Server, укажите в этом аргументе имя входа. Также укажите пароль с помощью аргумента -sqlpassword .

    При использовании проверки подлинности Windows не указывайте аргументы -sqlusername и -sqlpassword.

    ms162841.note(ru-ru,SQL.90).gifВажно!
    При возможности используйте проверку подлинности Windows.
  • -sqlpasswordsqlPassword
    Указывает пароль для имени входа -sqlusername. Этот аргумент должен использоваться вместе с аргументом -sqlusername.

Замечания

Команда nscontrol disable меняет состояние указанных компонентов на «Ожидание отключения», обновляя значение в базе данных. Состояние экземпляра хранится в базе данных экземпляра. Состояние отдельных компонентов хранится в базе данных приложений.

При запуске программы nscontrol disable службы Notification Services рассылают желаемое изменение состояния всем компонентам. После того как все работающие компоненты ответили на изменение, состояние «Ожидание отключения» изменяется на «Отключен». Для изменения состояния компонентов с «Ожидание отключения» на «Отключен» необходимо, чтобы экземпляр выполнялся. Это требование не распространяется на случаи исключения компонентов подписчиков и подписок. Однако изменение состояния «Ожидание включения» на «Отключен» или «Ожидание отключения» на «Включен» не требует запуска службы, так как эти действия просто отменяют отложенную операцию.

После того как программа nscontrol disable изменит базу данных, отобразится текущее состояние экземпляра, приложений и компонентов. Описание значений состояния см. в разделе Просмотр состояния экземпляров, приложений и компонентов.

При запуске ядро (обычно служба Windows NS$имя_экземпляра) определяет имя узла, где оно работает, и затем сравнивает это значение со значением SystemName для каждого распространителя, внутрипроцессного поставщика событий и генератора. Если имя узла совпадает со значением SystemName, то служба проверяет состояние компонента. Если компонент включен, это значит, что он работает на сервере. Если компонент отключен, это значит, что он не работает.

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

Состояние подписчиков и подписок хранится на сервере базы данных, и управляющие объекты подписки проверяют это состояние перед выполнением операций подписчика или подписки.

Разрешения

Учетная запись, используемая для запуска программы nscontrol disable, или идентификатор входа SQL Server, указанный в аргументе -sqlusername, могут получить необходимые разрешения через членство в роли базы данных NSAdmin в отдельных базах данных приложений и экземпляра. Члены роли базы данных db_owner и фиксированных серверных ролей sysadmin и dbcreator также могут запустить команду nscontrol disable.

Эта учетная запись должна также иметь разрешение на выполнение двоичных файлов Notification Services; такое разрешение предоставляется членам групп Windows «Администраторы» и SQLServerNotificationServicesUser.

Примеры

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

В следующем примере отключается весь экземпляр служб Notification Services с именем StockInstance. Команда nscontrol использует проверку подлинности Windows для подключения к службе SQL Server. Экземпляр должен быть зарегистрирован на компьютере, где выполняется команда.

nscontrol disable -name StockInstance

Б. Отключение одного приложения

В следующем примере отключаются все компоненты приложения Stock, размещенного на экземпляре StockInstance служб Notification Services. Команда nscontrol использует проверку подлинности Windows для соединения с SQL Server. Экземпляр должен быть зарегистрирован на компьютере, где выполняется команда.

nscontrol disable -name StockInstance -application Stock

В. Отключение всех внутрипроцессных поставщиков событий

В следующем примере отключается весь набор событий для всех приложений экземпляра StockInstance службы Notification Services. Команда nscontrol использует проверку подлинности Windows для соединения с SQL Server. Экземпляр должен быть зарегистрирован на компьютере, где выполняется команда.

nscontrol disable -name StockInstance -events

Г. Отключение экземпляра с компьютера администратора

Если команда nscontrol disable запускается с компьютера, на котором экземпляр StockInstance не зарегистрирован, необходимо указать имя экземпляра SQL Server, используя аргумент -server. В следующем примере показано, как отключить экземпляр, если базы данных находятся в экземпляре SQL Server с именем nsuetest. Команда nscontrol использует проверку подлинности Windows для соединения с SQL Server.

nscontrol disable -name StockInstance -server nsuetest

Д. Отключение экземпляра с использованием проверки подлинности SQL Server

ms162841.note(ru-ru,SQL.90).gifВажно!
При возможности используйте проверку подлинности Windows.

В следующем примере отключается весь экземпляр службы Notification Services с именем StockInstance. Команда nscontrol использует проверку подлинности SQL Server для соединения с SQL Server. Экземпляр должен быть зарегистрирован на компьютере, где выполняется команда.

nscontrol disable -name StockInstance -sqlusername SqlUser 
    -sqlpassword sQl-P@sWd

См. также

Справочник

Программа nscontrol

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

Включение и отключение экземпляров, приложений или компонентов

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

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

Журнал изменений

Версия Журнал

5 декабря 2005 г.

Новое содержимое:
  • Добавлены сведения о группе Windows SQLServerNotificationServicesUser.