Запуск, остановка, приостановка, возобновление и перезапуск служб SQL Server

Применимо к:SQL Server — только Windows

В этом разделе описываются процедуры запуска, завершения, приостановки, возобновления или перезапуска ядра СУБД SQL Server, агента SQL Server или службы обозревателя SQL Server с помощью диспетчера конфигурации SQL Server, SQL Server Management Studio (SSMS), команд .NET из командной строки, Transact-SQL или PowerShell.

Сведения о SQL Server на Linux см. в разделе Запуск, завершение и перезапуск служб SQL Server на Linux.

Указание службы

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

Служба компонента Database Engine

Служба Ядро СУБД может быть экземпляром по умолчанию (только один на одном компьютере) или может быть одним из нескольких именованных экземпляров на компьютере. С помощью Диспетчера конфигурации SQL Server определите, какие экземпляры ядра СУБД установлены на компьютере. Экземпляр по умолчанию (если вы его установили) указан в списке под именем SQL Server (MSSQLSERVER) . Именованные экземпляры (если они установkys) перечислены как SQL Server (<instance_name>). По умолчанию SQL Server Express устанавливается как SQL Server (SQLEXPRESS) .

служба агента SQL Server

Служба агента SQL Server выполняет запланированные административные задачи, которые называются заданиями и предупреждениями. Дополнительные сведения см. в статье SQL Server Agent. Агент SQL Server доступен не во всех выпусках SQL Server. Список функций, поддерживаемых выпусками SQL Server, см. в статье Выпуски и поддерживаемые функции SQL Server 2022.

служба «SQL Server, браузер»

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

Дополнительные сведения

  • При приостановке службы Ядро СУБД уже подключенные пользователи могут продолжать работать до момента отключения соединения, но новые пользователи не смогут подключиться к Ядру СУБД. Выполните приостановку при необходимости дождаться завершения работы пользователей перед остановкой службы, что позволит им завершить выполняемые транзакции. Возобновление позволяет ядру СУБД снова принимать входящие подключения. Служба агент SQL Server не может быть приостановлена или возобновлена.

  • Диспетчер конфигурации SQL Server и SSMS отображают текущее состояние служб с помощью следующих значков.

Диспетчер конфигурации SQL Server SQL Server Management Studio (SSMS)
Приступая к работе Зеленая стрелка на значке рядом с именем службы Белая стрелка на значке в виде зеленого круга рядом с именем службы
Остановлена Красный квадрат на значке рядом с именем службы Белый квадрат на значке в виде красного круга рядом с именем службы
Приостановлено Две вертикальные голубые линии на значке рядом с именем службы Две вертикальные белые линии на значке в виде голубого круга рядом с именем службы
перезапуск; Красный квадрат обозначает, что служба остановлена, а зеленая стрелка показывает, что служба успешно запущена None
  • Вы не сможете получить доступ ко всем возможным параметрам при использовании диспетчера конфигурации SQL Server или SSMS в зависимости от состояния службы. Например, если служба уже запущена, кнопка Пуск будет недоступна.

  • При эксплуатации на кластере службой ядра СУБД SQL Server лучше всего управлять с помощью администратора кластера.

Разрешения

По умолчанию только участники локальной группы администраторов могут запускать, останавливать, приостанавливать, возобновлять или перезапускать службу. При необходимости предоставить возможность управления службой для пользователей, не обладающих правами администратора, см. раздел Как предоставить пользователям права для управления службами в Windows Server 2003. (Процесс такой же, как и в других версиях Windows Server.)

Для остановки ядра СУБД с помощью команды Transact-SQL SHUTDOWN требуется членство в предопределенных ролях сервера sysadmin или serveradmin и не может быть передано.

Диспетчер конфигурации SQL Server

Запуск диспетчера конфигурации SQL Server

В меню Пуск выберите Все программы > Средства > настройки Microsoft SQL Server > диспетчер конфигурации SQL Server.

Диспетчер конфигурации SQL Server является оснасткой консоли управления Майкрософт и может не отображаться как приложение в некоторых версиях Windows. Дополнительные сведения см. в разделе SQL Server Configuration Manager.

Запуск, завершение, приостановка, возобновление или перезапуск экземпляра ядра СУБД SQL Server

  1. Запустите диспетчер конфигурации SQL Server, следуя инструкциям в предыдущем разделе.

  2. В диалоговом окне Контроль учетных записей выберите Да.

  3. В диспетчере конфигурации SQL Server на панели слева выберите Службы SQL Server.

  4. На панели результатов щелкните правой кнопкой мыши SQL Server (MSSQLServer) или именованный экземпляр, затем выберите Запуск, Остановка, Пауза, Возобновлениеили Перезапуск.

  5. Нажмите кнопку ОК, чтобы закрыть диспетчер конфигурации SQL Server.

Примечание

Сведения о запуске экземпляра ядра СУБД с параметрами запуска см. в разделе Настройка параметров запуска сервера (Диспетчер конфигурации SQL Server).

Важно!

Начиная с SQL Server 2022 (16.x) при установке режима запуска для службы SQL Server значение Автоматически в Configuration Manager служба будет запускаться в режиме автоматического (отложенного запуска), даже если режим запуска отображается как Автоматический.

Запуск, остановка, приостановка, возобновление или перезапуск обозревателя SQL Server или экземпляра агента SQL Server

  1. Запустите диспетчер конфигурации SQL Server, следуя инструкциям в предыдущем разделе.

  2. В диалоговом окне Контроль учетных записей выберите Да.

  3. В диспетчере конфигурации SQL Server на панели слева выберите Службы SQL Server.

  4. В области результатов щелкните правой кнопкой мыши SQL Server браузере или агент SQL Server (MSSQLServer) или агент SQL Server (<instance_name>) для именованного экземпляра, а затем выберите Пуск, Остановить, Приостановить, Возобновить или Перезапустить.

  5. Нажмите кнопку ОК, чтобы закрыть диспетчер конфигурации SQL Server.

Примечание

агент SQL Server не может быть приостановлено.

SQL Server Management Studio

Запуск, завершение, приостановка, возобновление или перезапуск экземпляра ядра СУБД

  1. В обозревателе объектов подключитесь к экземпляру ядра СУБД, щелкните правой кнопкой мыши экземпляр ядра СУБД, который нужно запустить, и выберите Запуск, Завершение, Приостановка, Возобновление или Перезапуск.

    Либо в разделе "Зарегистрированные серверы" щелкните правой кнопкой мыши экземпляр ядра СУБД, который нужно запустить, наведите указатель на Управление службами и выберите Запуск, Завершение, Приостановка, Возобновление или Перезапуск.

  2. В диалоговом окне Контроль учетных записей выберите Да.

  3. При появлении запроса на выполнение действия выберите Да.

Запуск, остановка или перезапуск экземпляра агента SQL Server

  1. В обозревателе объектов подключитесь к экземпляру ядра СУБД, щелкните правой кнопкой мыши Агент SQL Server и выберите Запуск, Завершение или Перезапуск.

  2. В диалоговом окне Контроль учетных записей выберите Да.

  3. При появлении запроса на выполнение действия выберите Да.

Окно командной строки с помощью команд NET

Службы SQL Server можно запустить, завершить или приостановить с помощью команд .NET Windows.

Запуск экземпляра ядра СУБД по умолчанию

  • В командной строке введите одну из следующих команд:

    net start "SQL Server (MSSQLSERVER)"
    

    -или-

    net start MSSQLSERVER
    

Запуск именованного экземпляра ядра СУБД

  • В командной строке введите одну из следующих команд: Замените <имя_экземпляра> именем экземпляра, которым необходимо управлять.

    net start "SQL Server (instancename)"
    

    -или-

    net start MSSQL$instancename
    

Запуск ядра СУБД с параметрами запуска

  • Добавьте параметры запуска в конец инструкции net start "SQL Server (MSSQLSERVER)" , разделенные пробелом. При запуске net startв параметрах запуска используется косая черта (/) вместо дефиса (-).

    net start "SQL Server (MSSQLSERVER)" /f /m
    

    -или-

    net start MSSQLSERVER /f /m
    

    Примечание

    Дополнительные сведения о параметрах запуска см. в разделе Параметры запуска службы Database Engine.

Запуск Агента SQL Server в экземпляре SQL Server по умолчанию

  • В командной строке введите одну из следующих команд:

    net start "SQL Server Agent (MSSQLSERVER)"
    

    -или-

    net start SQLSERVERAGENT
    

Запуск Агента SQL Server в именованном экземпляре SQL Server

  • В командной строке введите одну из следующих команд: Замените имя_экземпляра именем экземпляра, которым необходимо управлять.

    net start "SQL Server Agent (instancename)"
    

    -или-

    net start SQLAgent$instancename
    

Сведения о запуске агента SQL Server в подробном режиме для устранения неполадок см. в статье Приложение sqlagent90.

Запуск обозревателя SQL Server

  • В командной строке введите одну из следующих команд:

    net start "SQL Server Browser"
    

    -или-

    net start SQLBrowser
    

Приостановка или остановка служб в окне командной строки

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

  • Чтобы приостановить службу, замените на net startnet pause.

  • Чтобы остановить службу, замените на net startnet stop.

Transact-SQL

Ядро СУБД можно остановить с помощью инструкции SHUTDOWN .

Остановка ядра СУБД с помощью Transact-SQL

  • Чтобы дождаться завершения запущенных в настоящий момент инструкций и хранимых процедур Transact-SQL с последующей остановкой ядра СУБД, выполните следующую инструкцию.

    SHUTDOWN;
    
  • Чтобы остановить ядро СУБД немедленно, выполните следующую инструкцию.

    SHUTDOWN WITH NOWAIT;
    

Дополнительные сведения об инструкции см. в SHUTDOWN разделе SHUTDOWN (Transact-SQL).

PowerShell

Запуск и завершение служб ядра СУБД

  1. В окне командной строки SQL Server PowerShell путем выполнения следующей команды. Замените computername именем нужного компьютера.

    # Get a reference to the ManagedComputer class.
    CD SQLSERVER:\SQL\computername
    $Wmi = (get-item .).ManagedComputer
    
  2. Определите службу, которую нужно остановить или запустить. Выберите одну из следующих строк. Замените instancename именем именованного экземпляра.

    • Получение ссылки на экземпляр ядра СУБД по умолчанию.

      $DfltInstance = $Wmi.Services['MSSQLSERVER']
      
    • Получение ссылки на именованный экземпляр ядра СУБД.

      $DfltInstance = $Wmi.Services['MSSQL$instancename']
      
    • Получение ссылки на службу агента SQL Server в экземпляре ядра СУБД по умолчанию.

      $DfltInstance = $Wmi.Services['SQLSERVERAGENT']
      
    • Получение ссылки на службу агента SQL Server в именованном экземпляре ядра СУБД.

      $DfltInstance = $Wmi.Services['SQLAGENT$instancename']
      
    • Получение ссылки на службу обозревателя SQL Server.

      $DfltInstance = $Wmi.Services['SQLBROWSER']
      
  3. Завершите пример, чтобы запустить и затем остановить выбранную службу.

    # Display the state of the service.
    $DfltInstance
    # Start the service.
    $DfltInstance.Start();
    # Wait until the service has time to start.
    # Refresh the cache.
    $DfltInstance.Refresh();
    # Display the state of the service.
    $DfltInstance
    # Stop the service.
    $DfltInstance.Stop();
    # Wait until the service has time to stop.
    # Refresh the cache.
    $DfltInstance.Refresh();
    # Display the state of the service.
    $DfltInstance
    

Проверка и включение отключенных экземпляров

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

  1. Определите службу, которую вы пытаетесь проверка, используя сведения, приведенные в разделе Определение службы.

  2. В диспетчер конфигурации SQL Server выберите SQL Server Службы, а затем найдите интересующую вас службу.

  3. Если для столбца Режим запуска задано значение Другое (Загрузка, Система, Отключено или Неизвестно), это обычно означает, что соответствующая служба отключена. Чтобы включить службу, выполните следующие действия.

    1. В столбце Имя щелкните правой кнопкой мыши соответствующую службу и перейдите на вкладку Служба в <окне Свойства имени> службы.

    2. Проверьте значение в столбце Режим запуска и убедитесь, что для него задано значение Отключено.

    3. Измените значение на Вручную или Автоматически в соответствии с вашими требованиями. Дополнительные сведения см. в разделе Настройка параметров запуска сервера (диспетчер конфигурации SQL Server).

Использование класса ServiceController

Можно использовать класс ServiceController для программного управления службой SQL Server или любой другой службой Windows. Пример использования C# см. в разделе о классе ServiceController.

Устранение неполадок при запуске службы

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

Дальнейшие действия