Запуск, остановка, приостановка, возобновление и перезапуск служб 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 могут работать без отображения действий на экране компьютера и без вмешательства пользователя в командную строку.
Служба | Description |
---|---|
служба ядро СУБД | Служба Ядро СУБД может быть экземпляром по умолчанию (только один на одном компьютере) или может быть одним из нескольких именованных экземпляров на компьютере. С помощью Диспетчера конфигурации 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) | |
---|---|---|
Приступая к работе | Зеленая стрелка на значке рядом с именем службы | Белая стрелка на значке в виде зеленого круга рядом с именем службы |
Остановлено | Красный квадрат на значке рядом с именем службы | Белый квадрат на значке в виде красного круга рядом с именем службы |
Приостановлено | Две вертикальные голубые линии на значке рядом с именем службы | Две вертикальные белые линии на значке в виде голубого круга рядом с именем службы |
Перезагрузки | Красный квадрат обозначает, что служба остановлена, а зеленая стрелка показывает, что служба успешно запущена | нет |
У вас нет доступа ко всем возможным параметрам при использовании диспетчер конфигурации SQL Server или SSMS в зависимости от состояния службы. Например, если служба уже запущена, кнопка Пуск будет недоступна.
При эксплуатации на кластере службой ядра СУБД SQL Server лучше всего управлять с помощью администратора кластера.
Разрешения
По умолчанию только участники локальной группы администраторов могут запускать, останавливать, приостанавливать, возобновлять или перезапускать службу. Чтобы предоставить неадминистраторам возможность управления службами, см. инструкции по предоставлению пользователям прав на управление службами. (Процесс такой же, как и в других версиях Windows Server.)
Для остановки ядро СУБД с помощью команды Transact-SQL SHUTDOWN
требуется членство в предопределенных ролях сервера sysadmin или serveradmin и не допускает передачи.
Диспетчер конфигурации SQL Server
Диспетчер конфигурации SQL Server — это оснастка для программы консоли управления Майкрософт, и она может не отображаться как приложение в некоторых версиях Windows. Дополнительные сведения см. в разделе SQL Server Configuration Manager.
Запуск диспетчера конфигурации SQL Server
В меню "Пуск" выберите все программы > Microsoft SQL Server > Configuration Tools > диспетчер конфигурации SQL Server.
Запуск, завершение, приостановка, возобновление или перезапуск экземпляра ядра СУБД SQL Server
Запустите диспетчер конфигурации SQL Server, используя инструкции, описанные в предыдущем разделе.
В диалоговом окне Контроль учетных записей выберите Да.
В диспетчере конфигурации SQL Server на панели слева выберите Службы SQL Server.
На панели результатов щелкните правой кнопкой мыши SQL Server (MSSQLServer) или именованный экземпляр, затем выберите Запуск, Остановка, Пауза, Возобновлениеили Перезапуск.
Нажмите кнопку ОК, чтобы закрыть диспетчер конфигурации SQL Server.
Чтобы запустить экземпляр ядро СУБД с параметрами запуска, см. диспетчер конфигурации SQL Server. Настройка параметров запуска сервера.
Внимание
Начиная с SQL Server 2022 (16.x), при настройке режима запуска службы SQL Server для службы SQL Server в Configuration Manager служба начнется в режиме автоматического (отложенного запуска), даже если режим запуска отображается как автоматический.
Запуск, остановка, приостановка, возобновление или перезапуск обозревателя SQL Server или экземпляра агента SQL Server
Запустите диспетчер конфигурации SQL Server, используя инструкции, описанные в предыдущем разделе.
В диалоговом окне Контроль учетных записей выберите Да.
В диспетчере конфигурации SQL Server на панели слева выберите Службы SQL Server.
На панели результатов щелкните правой кнопкой мыши Обозреватель SQL Server, Агент SQL Server (MSSQLServer) или Агент SQL Server (<имя_экземпляра>) для именованного экземпляра, а затем выберите Запуск, Завершение, Приостановка, Возобновление или Перезапуск.
Нажмите кнопку ОК, чтобы закрыть диспетчер конфигурации SQL Server.
Примечание.
агент SQL Server невозможно приостановить.
Среда SQL Server Management Studio
Используйте СРЕДУ SQL Server Management Studio для управления службами SQL Server ядро СУБД.
Запуск, завершение, приостановка, возобновление или перезапуск экземпляра ядра СУБД
В обозревателе объектов подключитесь к экземпляру ядра СУБД, щелкните правой кнопкой мыши экземпляр ядра СУБД, который нужно запустить, и выберите Запуск, Завершение, Приостановка, Возобновление или Перезапуск.
Либо в разделе "Зарегистрированные серверы" щелкните правой кнопкой мыши экземпляр ядра СУБД, который нужно запустить, наведите указатель на Управление службами и выберите Запуск, Завершение, Приостановка, Возобновление или Перезапуск.
В диалоговом окне Контроль учетных записей выберите Да.
При появлении запроса на выполнение действия выберите Да.
Запуск, остановка или перезапуск экземпляра агента SQL Server
В обозревателе объектов подключитесь к экземпляру ядра СУБД, щелкните правой кнопкой мыши Агент SQL Server и выберите Запуск, Завершение или Перезапуск.
В диалоговом окне Контроль учетных записей выберите Да.
При появлении запроса на выполнение действия выберите Да.
Окно командной строки с помощью net commands
Службы 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
Примечание.
Дополнительные сведения о параметрах запуска см. в разделе ядро СУБД Параметры запуска службы.
Запуск Агента 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 start
наnet pause
. - Чтобы остановить службу, замените
net start
наnet stop
.
Transact-SQL
Ядро СУБД можно остановить с помощью инструкцииSHUTDOWN
.
Остановка ядро СУБД с помощью Transact-SQL
Чтобы дождаться завершения запущенных в настоящий момент инструкций и хранимых процедур Transact-SQL с последующей остановкой ядра СУБД, выполните следующую инструкцию.
SHUTDOWN;
Чтобы остановить ядро СУБД немедленно, выполните следующую инструкцию.
SHUTDOWN WITH NOWAIT;
Дополнительные сведения об инструкции SHUTDOWN
см. в разделе SHUTDOWN.
PowerShell
Вы можете управлять службами SQL Server ядро СУБД с помощью PowerShell.
Запуск и завершение служб ядра СУБД
В окне командной строки SQL Server PowerShell путем выполнения следующей команды. Замените
computername
именем нужного компьютера.# Get a reference to the ManagedComputer class. CD SQLSERVER:\SQL\computername $Wmi = (get-item .).ManagedComputer
Определите службу, которую нужно остановить или запустить. Выберите одну из следующих строк. Замените
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']
Завершите пример, чтобы запустить и затем остановить выбранную службу.
# 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, выполните следующие действия.
Определите службу, которую вы пытаетесь проверить, используя сведения в разделе "Пуск", "Остановить", "Приостановить", "Возобновить" и перезапустить службы SQL Server.
В диспетчер конфигурации SQL Server выберите службы SQL Server, а затем найдите нужную службу.
Если для столбца "Режим запуска" задано значение Other (Boot, System, Disabled или Unknown), обычно это означает, что соответствующая служба отключена. Чтобы включить службу, выполните следующие действия.
В столбце "Имя" щелкните правой кнопкой мыши соответствующую службу и перейдите на вкладку "Служба" в< окне "Свойства имени> службы".
Просмотрите значение в столбце "Режим запуска" и убедитесь, что для него задано значение "Отключено".
Измените значение на "Вручную " или "Автоматически " в соответствии с вашими требованиями. Дополнительные сведения см. в разделе диспетчер конфигурации SQL Server. Настройка параметров запуска сервера.
Использование класса ServiceController
Можно использовать класс ServiceController
для программного управления службой SQL Server или любой другой службой Windows. Пример использования C# см. в разделе о классе ServiceController.
Устранение неполадок при запуске службы
При попытке запустить службы SQL Server они могут не запускаться, если возникла проблема с конфигурацией. Вы можете просмотреть журналы конкретной службы, чтобы определить проблему и устранить ее. Подробные инструкции по устранению неполадок и их устранению доступны в следующих статьях:
- Ошибки запуска SQL Server на автономном сервере
- Не удается запустить службу SQL Server и службу агент SQL Server на автономном сервере.
- При попытке запустить агент SQL Server завершается сбоем