Как запустить sql server 2018: Запуск, остановка, приостановка, возобновление и перезапуск служб SQL Server — SQL Server
Содержание
Как восстановить права администратора в MS SQL Server
Как восстановить права администратора в MS SQL Server
В этой статье описывается, как восстановить доступ к Компонент SQL Server Database Engine в качестве системного администратора, если доступ был заблокирован. Системный администратор может утратить доступ к экземпляру SQL Server по одной из следующих причин:
- по ошибке удалены все члены предопределенной роли сервера sysadmin;
- по ошибке удалены все группы Windows, которые являлись членами предопределенной роли сервера sysadmin;
- имена входа, являющиеся членами предопределенной роли сервера sysadmin, принадлежат лицам, которые покинули компанию или недоступны;
- учетная запись sa отключена, или никто не знает ее пароля.
Содержание
Решение
Чтобы устранить проблему доступа, рекомендуется запустить экземпляр SQL Server в однопользовательском режиме. Этот режим не позволит устанавливать другие подключений при попытке восстановить доступ. Вы можете подключиться к экземпляру SQL Server и добавить имя входа в роль сервера sysadmin.
Можно запустить экземпляр SQL Server в однопользовательском режиме с параметрами -m
или -f
из командной строки. Затем любой член локальной группы администраторов на компьютере может подключиться к экземпляру SQL Server в качестве члена предопределенной роли сервера sysadmin.
При запуске экземпляра в однопользовательском режиме сначала нужно остановить службу «Агент SQL Server». В противном случае агент SQL Server может установить соединение первым, заняв единственное доступное подключение к серверу и заблокировав возможность входа.
Кроме того, неизвестное клиентское приложение может воспользоваться единственным доступным подключением, прежде чем вы сможете выполнить вход. Чтобы исключить возникновение этой ситуации, используйте параметр -m
, за которым следует имя приложения, что позволит ограничить подключения одним подключением из определенного приложения. Например, запуск SQL Server с помощью -mSQLCMD
разрешает только одно соединение, которое должно идентифицироваться как клиентская программа sqlcmd. Для подключения через редактор запросов в Среда Management Studio используйте -m"Microsoft SQL Server Management Studio - Query"
.
Важно! Не используйте -m
с именем приложения в качестве средства безопасности. Клиентские приложения предоставляют имя приложения в параметрах строки подключения и могут легко указать ложное имя.
В следующей таблице приведены различные способы запуска экземпляра в однопользовательском режиме в командной строке.
Пошаговые инструкции
Далее приводятся пошаговые инструкции по предоставлению системному администратору, доступ которого было по ошибке заблокирован, разрешений для входа в SQL Server.
Предварительные требования
- SQL Server запущен в Windows 8 или более поздней версии. Небольшие изменения для предыдущих версий SQL Server или Windows приведены там, где применимо.
- На компьютере установлена среда SQL Server Management Studio.
Следуйте этим инструкциям, выполнив вход в систему Windows в качестве члена локальной группы администраторов.
- В меню «Пуск» Windows правой кнопкой мыши щелкните значок диспетчера конфигурации SQL Server и выберите пункт Запуск от имени администратора, чтобы передать учетные данные администратора в диспетчер конфигурации.
- На левой панели диспетчера конфигурации SQL Server выберите Службы SQL Server. На панели справа найдите свой экземпляр SQL Server. (Экземпляр по умолчанию SQL Server включает (MSSQLSERVER) после имени компьютера. Именованные экземпляры появляются в верхнем регистре с тем же названием, что и в списке «зарегистрированные серверы»). Щелкните правой кнопкой мыши экземпляр SQL Server, а затем выберите пункт Свойства.
- На вкладке Параметры запуска в поле Укажите параметр запуска введите параметр
-m
и нажмите кнопку Добавить. (Это дефис, затем буква «m» в нижнем регистре.)
Примечание. В некоторых предыдущих версиях SQL Server нет вкладки Параметры запуска . В этом случае на вкладке Дополнительно дважды щелкните Параметры запуска. Параметры открываются в очень маленьком окне. Не изменяйте существующие параметры. В самом конце добавьте новый параметр ;-m
и нажмите кнопку ОК. (Это точка с запятой, затем дефис, затем буква «m» в нижнем регистре.)
4. Нажмите кнопку ОК, а после сообщения о перезагрузке щелкните правой кнопкой мыши имя сервера и выберите пункт Перезапустить.
5. После перезагрузки SQL Server ваш сервер находится в однопользовательском режиме. Убедитесь, что агент SQL Server не выполняется. Если он был запущен, то он займет ваше единственное соединение.
6. В меню «Пуск» Windows щелкните правой кнопкой мыши значок Среда Management Studio и выберите пункт Запуск от имени администратора. Учетные данные администратора будут переданы в SSMS.
Примечание. В более ранних версиях Windows параметр Запуск от имени администратора появляется в виде подменю.
В некоторых конфигурациях SSMS попытается установить несколько подключений. Многочисленные соединения приведут к ошибке, поскольку SQL Server находится в однопользовательском режиме. Выполните одно из следующих действий, соответствующее вашему сценарию.
a. Подключитесь с помощью обозревателя объектов, используя проверку подлинности Windows (которая включает учетные данные администратора). Разверните Безопасность, затем Имена входа и дважды щелкните имя входа. На странице Роли сервера выберите sysadmin и нажмите ОК.
b. Вместо соединения с помощью обозревателя объектов подключитесь с помощью окна запросов, используя проверку подлинности Windows (которая включает учетные данные администратора). (Подключиться подобным образом можно только в том случае, если подключение не выполнено с помощью обозревателя объектов.) Выполните следующий код, чтобы добавить новое имя входа для проверки подлинности Windows, которое является членом предопределенной роли сервера sysadmin . В следующем примере создается пользователь с именем CONTOSO\PatK
.
CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS; ALTER SERVER ROLE sysadmin ADD MEMBER [CONTOSO\PatK];
c. Если экземпляр SQL Server работает в режиме смешанной проверки подлинности, подключитесь к окну запросов при помощи проверки подлинности Windows (которая включает учетные данные администратора). Выполните следующий код, чтобы создать новое имя входа для проверки подлинности в SQL Server, которое является членом предопределенной роли сервера sysadmin.
CREATE LOGIN TempLogin WITH PASSWORD = '************'; ALTER SERVER ROLE sysadmin ADD MEMBER TempLogin;
Предупреждение. Замените ************ надежным паролем.
d. Если экземпляр SQL Server работает в режиме смешанной проверки подлинности и требуется изменить пароль для учетной записи sa , подключитесь к окну запросов с использованием проверки подлинности Windows (которая включает учетные данные администратора). Измените пароль учетной записи sa с помощью следующей команды.
ALTER LOGIN sa WITH PASSWORD = '************';
Предупреждение. Замените ************ надежным паролем.
7. Закройте среду Среда Management Studio.
8. Следующие действия позволят переключить SQL Server в многопользовательский режим. На левой панели диспетчера конфигурации SQL Server выберите Службы SQL Server.
9. На правой панели щелкните экземпляр SQL Serverправой кнопкой мыши и выберите пункт Свойства.
10. На вкладке Параметры запуска в поле Существующие параметры выберите -m
и нажмите кнопку Удалить.
Примечание. В некоторых предыдущих версиях SQL Server нет вкладки Параметры запуска . В этом случае на вкладке Дополнительно дважды щелкните Параметры запуска. Параметры открываются в очень маленьком окне. Удалите ;-m
, добавленный ранее, и нажмите ОК.
11. Щелкните правой кнопкой мыши имя сервера и выберите пункт Перезапустить. Не забудьте запустить агент SQL Server еще раз, если он был остановлен перед запуском SQL Server в однопользовательском режиме.
Теперь можно подключиться к одной из учетных записей, которая является членом предопределенной роли сервера sysadmin .
Исправление XML схемы в MS SQL Server 2008/2008 R2
В SQL Server 2008 есть очень полезный тип XML
. C помощью команды
CREATE XML SCHEMA COLLECTION [XML_схема] AS ... |
можно создать xml схему, и использовать тип
XML(DOCUMENT [XML_схема]) |
для формирования «правильных» значений xml. Однако, xml схему уже нельзя изменить, если она используется; например, существует поле таблицы, параметр процедуры или функции созданного типа. В этом случае изменения можно внести двумя способами: прекратить использование схемы, внести изменения и восстановить параметры/типы полей; либо внести изменения в системные таблицы, в которых описана данная xml схема.
Явное исправление схемы
Первый вариант — заменить все использования типа XML(DOCUMENT [XML_схема])
на типVARCHAR(MAX)
(для параметров процедур и функций подойдет также нетипизированный тип XML
). Затем изменить схему с помощью команд
DROP XML SCHEMA COLLECTION и CREATE XML SCHEMA COLLECTION . |
Для этого в SQL Management Studio есть удобный пункт меню DROP and CREATE To...
Изменение xml схемы
В открытом окне запроса нужно указать полный текст схемы с внесенными изменениями.
Однако, этот способ подходит только в случае редкого использования данной xml схемы.
Исправление системных таблиц
После выполнения команды CREATE XML SCHEMA COLLECTION
структура схемы хранится во множестве системных таблиц. Но в SQL Server 2008/2008 R2 запрещено править системные таблицы при обычном подключении. Для того, чтобы внести изменения, требуется сделать такие шаги.
1. Запустить данный экземпляр SQL server в single-user mode.
a. Добавить в разделе
HKLMSoftwareMicrosoftMicrosoft SQL ServerMSSQLxxx.yyyMSSQLServerParameters |
строковый параметр SQLArgzzz
типа REG_SZ
со значением -m
,
где xxx
— номер версии (для SQL Server 2008: xxx
= 10, а для SQL Server 2008 R2: xxx
= 10_50),yyy
— имя экземпляра,zzz
— следующий порядковый номер параметра службы.
Ключи реестра
b. Убедиться, что служба SQL Server Browser запущена и стоит в автоматическом режиме.
c. Убедиться, что служба SQL Server Agent для этого экземпляра сервера отключена.
d. Перегрузить сервер, поскольку перезапуска служб не хватает.
2. Установить Dedicated Administrator Connection (DAC).
a. Запустить SQL Management Studio обычным способом. Использовать запуск от имени администратора не обязательно. Не подключаться к Database Engine.
b. Создать новый запрос. В диалоговом окне в качестве имени сервера указать ADMIN:Имя_экземпляра
, база по умолчанию master
. Вариант аутентификации пользователя может быть Windows/SQL, но учетная запись должна быть членом роли sysadmin
.
Новый запрос
c. Появляется окно запроса. Можно выполнять запросы, модифицировать системные таблицы. Поскольку доступно подключение только одного пользователя, то нужно использовать только это окно запроса; просмотр дерева таблиц, процедур и других объектов в окне Object Explorer недоступен. Поэтому нужно сначала (либо в другом экземпляре SQL Server) просмотреть структуру таблиц, а затем с помощью запросов на T-SQL
внести изменения.
3. Выполнить изменения таблиц.
Описание xml схем и их элементов находится в таблицах sys.xml_schema_***
. Например,
select * from sys.xml_schema_collections |
выводит список всех системных и пользовательских xml схем;
select * from sys.xml_schema_components where xml_collection_id = 65539 |
выводит элементы первой добавленной пользовательской xml схемы, и т.д.
В поисках необходимой таблицы очень помогает IntelliSense, встроенный в SQL Management Studio. Дальнейшие изменения выполняются с помощью DML команд. При этом следует внимательно следить за корректностью и целостностью изменяемых данных.
4. Восстановить прежние настройки сервера.
Требуется отключить окно запроса, закрыть студию, удалить параметр из реестра и перезапустить сервер. Должна восстановиться штатная работа SQL Server.
После этого просмотр xml схемы командой CREATE XML SCHEMA COLLECTION
выведет схему с внесенными изменениями.
- Все используемые IP-адреса, имена серверов, компьютеров, доменов, являются фиктивными и используются исключительно в демонстрационных целях.
- Информация приводится «AS IS».
Как остановить и запустить службы SQL Server
Автор: Daniel Farina |
Комментарии (3) | Связанный: Подробнее > Администрирование базы данных
Проблема
Часто бывает необходимо остановить и запустить службы SQL Server, поэтому
в этом совете мы рассмотрим различные способы сделать это.
Решение
Работа со службами SQL Server может быть сложной задачей для всех, кроме
опытные администраторы баз данных SQL Server. Если вы администратор базы данных, вы можете подумать, что я преувеличиваю.
но в своей карьере я видел случаи, когда системные администраторы и даже разработчики SQL Server
которые не знают, как запускать и останавливать службы SQL Server. В большинстве
случаях они не знают, какая из служб, связанных с SQL Server, является единственной.
им нужно начать.
Службы SQL Server
Это службы, которые вы найдете на компьютере с установленным SQL Server.
ядро базы данных установлено без служб Analysis Services, служб Integration Services или
Службы отчетности.
Служба | Описание |
---|---|
SQL Server (<имя экземпляра>) | Это служба ядра базы данных. Другими словами, это ядро SQL Server. |
Агент SQL Server (<имя экземпляра>) | Эта служба используется SQL Server в качестве планировщика заданий. Если эта услуга не работает, запланированные задачи, такие как резервное копирование или обслуживание индекса, выполняться не будут. |
Браузер SQL Server | Эта служба помогает клиентским соединениям получать информацию, необходимую для подключаться к экземплярам SQL Server на текущем сервере. |
Служба CEIP SQL Server (<имя экземпляра>) | Это служба программы улучшения качества программного обеспечения. |
Модуль записи VSS SQL Server | Предоставляет интерфейс для резервного копирования/восстановления сервера Microsoft SQL через инфраструктура Windows VSS. |
В предыдущей таблице, где указано <Имя экземпляра>, вы должны заменить
это с именем вашего экземпляра. Это имя задается во время установки SQL Server,
но есть два стандартных имени: MSSQLSERVER для экземпляра по умолчанию.
и SQLEXPRESS для версии SQL Server Express. Может быть, вы уже поняли
это, но стоит упомянуть, что у вас может быть много услуг, которые
включать
На следующем снимке экрана показано представление диспетчера служб Windows на
сервер с одним экземпляром SQL Server в качестве экземпляра по умолчанию (MSSQLSERVER).
Кроме того, на следующем снимке экрана вы можете увидеть тот же диспетчер служб Windows.
представления, но в системе с несколькими экземплярами SQL Server на одном компьютере.
Зависимости службы Windows
Иногда вы обнаружите, что существуют службы, которые для работы полагаются на
другие услуги. Это то, что называется сервисной зависимостью. Службы SQL Server
иметь мало зависимостей. Агент SQL Server зависит от службы SQL Server;
и служба SQL Server зависит от службы «Изоляция ключа CNG». Ключ СПГ
Служба изоляции обеспечивает изоляцию ключевых процессов от закрытых ключей и связанных с ними
криптографические операции.
Запуск и остановка служб SQL Server с помощью диспетчера служб Windows
Когда речь идет о запуске и остановке служб, де-факто инструментом является Windows
Консоль управления службами, которую вы можете найти в инструментах администрирования Windows.
папка. Его использование очень простое, у вас есть список служб Windows
и единственное, что вам нужно сделать, это найти соответствующий сервис для экземпляра
вы хотите изменить, и, щелкнув правой кнопкой мыши на сервисе, вы
увидеть всплывающее меню.
Во всплывающем меню можно увидеть пункты «Старт», «Стоп», «Перезапуск», выполняющие
запуск, остановка на выбранной службе. Конечно, вы увидите серым цветом
элементы, которые несовместимы с текущим статусом услуги (т.е. вы не можете
запустить уже запущенную службу или остановить не работающую службу). в
на следующем снимке экрана вы увидите это более четко.
Запуск и остановка служб SQL Server с помощью диспетчера конфигурации SQL Server
Диспетчер конфигурации SQL Server — это инструмент, предоставляемый Microsoft для выполнения
изменения конфигурации в службах SQL Server. Это приложение
позволяет нам запускать, останавливать и перезапускать службы SQL Server.
Для этого вам нужно щелкнуть правой кнопкой мыши службу, которую вы хотите запустить/остановить, и выбрать
соответствующий пункт контекстного меню.
Запуск и остановка служб SQL Server SQL Server Management Studio
SQL Server Management Studio, которую мы для краткости называем SSMS, также позволяет нам запускать и останавливать
Службы SQL Server локально и в удаленных системах. Если вы щелкните правой кнопкой мыши базу данных
сервер или агент SQL Server в окне обозревателя объектов появится контекстное меню.
неожиданно возникнуть. Среди пунктов этого меню есть «Старт», «Стоп» и «Перезапуск».
предметы. Эти элементы выполняют указанное действие в службе.
Если вы из тех людей, которые хотят навести порядок и воспользоваться
функции зарегистрированных серверов SSMS, вы также можете управлять службами SQL Server
оттуда. Что вам нужно сделать, это щелкнуть правой кнопкой мыши по имени сервера и в
В появившемся контекстном меню разверните пункт «Управление услугами». Там у вас есть
Пункты «Старт», «Стоп» и «Перезапуск».
Запуск и остановка служб SQL Server с помощью командной строки
Если вы придерживаетесь старой школы, вы все равно можете использовать командную строку для выполнения
административные задачи. Есть две команды, которые позволяют вам управлять службами.
Первая и самая старая из них — это команда NET, которая позволяет вам управлять сервисами.
на локальном компьютере; и новейший SC, который работает и на удаленных системах.
Но прежде чем мы начнем с команд, следует отметить, что службы могут быть переданы
по «имени» или по «отображаемому имени», которые не совпадают. Названия служб, как правило,
быть короче и без пробелов, чем его «отображаемое имя». И NET, и
Команды SC принимают «имя» и «отображаемое имя» без различия. Единственное, что ты
нужно учитывать, что в случае использования «отображаемого имени» следует заключить его в кавычки.
Но есть преимущество использования «имени» службы, которое заключается в том, что они хорошо
известен заранее, потому что у именования есть стандарт, который вы можете увидеть на следующем
стол.
Служба | Имя службы экземпляра по умолчанию | Имя службы именованного экземпляра |
---|---|---|
SQL Server | MSSQLSERVER | MSSQL$<имя экземпляра> |
Агент SQL Server | SQLSERVERAGENT | SQLAGENT$<имя экземпляра> |
Как видно из приведенной выше таблицы, имя службы для именованных экземпляров состоит
с помощью MSSQL (в случае ядра базы данных) и SQLAGENT (для службы агента), за которыми следуют
знаком доллара ($) и именем экземпляра. В качестве примера предположим, что у вас есть экземпляр
с именем TIPS, тогда имя службы SQL Server будет MSSQL$TIPS, а служба агента
имя SQLAGENT$СОВЕТЫ
Для запуска|остановки службы с помощью команды NET используется следующий синтаксис
чистый старт | остановка имя_службы
Например, чтобы запустить службу агента SQL экземпляра SQL Server по умолчанию.
команда
чистый старт SQLSERVERAGENT
Чтобы остановить службу агента SQL экземпляра SQL Server по умолчанию, выполните команду
чистая остановка SQLSERVERAGENT
На следующем снимке экрана вы можете увидеть обе команды в действии.
Если вы решите использовать команду SC, вы увидите, что есть небольшие отличия
с помощью команды NET, но преимущество в том, что вы можете управлять службами удаленно.
системы. Конечно, это зависит от прав вашей учетной записи пользователя на удаленном компьютере.
Запуск и остановка служб SQL Server с помощью PowerShell
PowerShell — это среда автоматизации задач и управления конфигурацией. В нем есть
преимущество быть доступным для
Платформы Linux, так что вы можете в конечном итоге начать
или остановите службы SQL Server в средах Windows и Linux из Linux.
терминал с помощью PowerShell. Помните, что PowerShell Core все еще находится в стадии разработки.
и по этой причине код, который я буду использовать, не гарантирует работу в системах Linux.
Чтобы просмотреть статус службы с помощью PowerShell, мы можем использовать Get-Service .
командлет, передающий имя нашего сервиса в параметре –Name. Синтаксис
для просмотра состояния службы экземпляра SQL Server по умолчанию:
Get-Service — имя MSSQLSERVER
Кроме того, если вам нужно просмотреть состояние службы именованного экземпляра,
имя Советы команда выглядит следующим образом:
Get-Service -Name MSSQL$Tips
Чтобы запустить или остановить службу с помощью PowerShell, мы можем использовать Сет-Сервис
командлет, передающий следующее:
- – Имя параметра
- –Статус параметр — желаемое состояние для которого мы хотим
обслуживание. Для параметра Status мы должны использовать Running .
в случае, если мы хотим запустить службу и Stopped , если мы хотим
службу остановить. - –PassThru для получения вывода команды в
консоль.
В следующем разделе кода показан пример того, как просмотреть статус службы
экземпляр по умолчанию, а затем запустите службу.
Get-Service — имя MSSQLSERVER Set-Service - Имя MSSQLSERVER - Статус Выполняется - PassThru Get-Service — имя MSSQLSERVER
На следующем изображении вы можете увидеть скриншот предыдущего выполнения кода.
Если мы хотим запустить/остановить службу SQL Server на удаленном компьютере с помощью PowerShell
мы можем использовать командлет Invoke-Command для передачи Get-Service/Set-Service
командлеты в удаленную систему следующим образом:
Invoke-Command -ComputerName SERVER -ScriptBlock { код }
Это выполнит код в фигурных скобках на удаленном компьютере с именем SERVER. Давайте
см. практический пример:
Invoke-Command -ComputerName SQL-A -ScriptBlock { Get-Service -Name MSSQLSERVER} Invoke-Command -ComputerName SQL-A -ScriptBlock {Set-Service -Name MSSQLSERVER -Status Running -PassThru} Invoke-Command -ComputerName SQL-A -ScriptBlock { Get-Service -Name MSSQLSERVER}
Вы можете увидеть результат выполнения предыдущего кода на следующем снимке экрана.
Запуск и остановка служб SQL Server с помощью dbatools
Dbatools — это бесплатный модуль PowerShell, который можно загрузить по этому адресу:
https://dbatools.io/, который включает
команды администрирования, разработки и миграции, готовые к использованию для SQL Server.
Для просмотра состояния служб, связанных с SQL, этот модуль включает командлет с именем
Get-DbaService , который можно использовать для получения статуса SQL Server.
связанные службы на одном или нескольких компьютерах. В таблице ниже вы можете увидеть параметры
командлета Get-DbaService, а также понятное описание.
Параметр | Описание |
---|---|
Имя_компьютера | Имя сервера или список серверов для получения служебной информации. |
имя экземпляра | Экземпляр или список экземпляров для получения служебной информации. |
Учетные данные | Объект PSCredential (дополнительную информацию об этом см. в Руководстве по PowerShell). |
Тип | Тип службы для получения информации. Может быть один или список следующие: «Агент», «Браузер», «Движок», «Полнотекстовый», «SSAS», «SSIS», «SSRS», «PolyBase». |
Например, если вы хотите проверить состояние служб SQL Server на компьютере
SQL-A, то вы должны выполнить следующую команду.
Get-DbaService-ComputerName SQL-A
Взгляните на результаты на следующем снимке экрана.
Если мы хотим запустить службу, связанную с SQL Server, с помощью Dbatools, мы можем использовать
Start-DbaService . В таблице ниже вы можете увидеть параметры
командлета Start -DbaService, а также описание.
Параметр | Описание |
---|---|
Имя_компьютера | Имя сервера или список серверов для получения служебной информации. |
имя экземпляра | Экземпляр или список экземпляров для получения служебной информации. |
Учетные данные | Объект PSCredential (дополнительную информацию об этом см. в Руководстве по PowerShell). |
Тип | Тип службы для получения информации. Может быть один или список следующие: «Агент», «Браузер», «Движок», «Полнотекстовый», «SSAS», «SSIS», «SSRS», «PolyBase». |
Например, если вы хотите запустить экземпляр службы SQL Server по умолчанию на
компьютер SQL-A, вы должны выполнить следующую команду.
Start-DbaService -ComputerName SQL-A -Type Engine
На следующем снимке экрана вы можете увидеть результат выполнения запроса выше.
Следует отметить, что если вы не укажете тип службы с
параметр –Type Start-DbaService попытается запустить все связанные с SQL Server
услуги.
Для остановки служб, связанных с SQL Server, этот модуль включает командлет с именем
Stop-DbaService , который можно использовать для остановки любых связанных с SQL Server
службы на одном или нескольких компьютерах. В таблице ниже вы можете увидеть параметры
командлета Stop-DbaService, а также понятное описание.
Параметр | Описание |
---|---|
Имя_компьютера | Имя сервера или список серверов для получения служебной информации. |
имя экземпляра | Экземпляр или список экземпляров для получения служебной информации. |
Учетные данные | Объект PSCredential (дополнительную информацию об этом см. в Руководстве по PowerShell). |
Тип | Тип службы для получения информации. Может быть один или список следующие: «Агент», «Браузер», «Движок», «Полнотекстовый», «SSAS», «SSIS», «SSRS», «PolyBase». |
Сила | Принудительно останавливает зависимые службы. Например, если вы хотите остановить SQL Служба ядра базы данных сервера принудительно останавливает агент SQL Server. |
Запуск и остановка служб SQL Server с помощью SQLCMD
SQLCMD имеет параметры для изменения состояния служб, связанных с SQL Server, но
это не метод
самостоятельно. SQLCMD имеет «!!» Команда для выполнения команд операционной системы. В
для этого мы должны начать строку с двумя восклицательными знаками (!!), за которыми следует
по команде операционной системы.
Например, чтобы запустить службу агента SQL экземпляра SQL Server по умолчанию.
команда
!!чистый запуск SQLSERVERAGENT
На следующем изображении вы можете увидеть снимок экрана, как запустить SQL Server.
Служба агента в экземпляре по умолчанию.
Следующие шаги
- В этом совете рассматривается базовый набор служб SQL Server. Если вы хотите
узнать больше обо всех службах, которые делают SQL Server, взгляните на этот учебник:Компоненты SQL Server 101.
- Кроме того, вы можете проверить этот другой совет, чтобы узнать больше о службах SQL Server:
Службы Windows для SQL Server.
- Если вам необходимо узнать, какие службы установлены на ваших серверах,
в этом совете вы узнаете, как использовать PowerShell для создания списка:Каталог служб SQL Server, установленных на серверах.
- Для получения дополнительной информации об использовании утилиты SQLCMD вы можете прочитать мой предыдущий:
Знакомство с утилитой SQL Server sqlcmd.
- Если вы новичок в PowerShell, следующая серия советов
подходит для вас:Введение в Windows PowerShell для администратора баз данных SQL Server, часть 1.
Об авторе
Даниэль Фарина родился в Буэнос-Айресе, Аргентина. Самоучка, с детства проявлял страсть к учебе.
Посмотреть все мои советы
Запуск, остановка и перезапуск служб SQL Server: 5 различных методов
ГлавнаяИнструменты и технологииПять различных способов запуска, остановки и перезапуска служб SQL Server
Когда мы устанавливаем SQL Server, он также устанавливает следующие службы:
- Служба ядра базы данных SQL Server для управления и доступа к данным в SQL Server.
- Служба интеграции SQL Server для процесса ETL — устанавливаем при включении служб интеграции во время установки.
- Служба отчетов SQL Server для управления отчетами SQL Server.
- Служба агента SQL Server. Обратите внимание, что он недоступен в выпуске SQL Server Express.
В этой статье мы изучим следующие методы управления службами SQL Server:
- Запуск, остановка и перезапуск служб SQL Server с помощью диспетчера конфигурации SQL Server.
- Запуск, остановка и перезапуск служб SQL Server с помощью MMC служб (консоли управления Microsoft).
- Запуск, остановка и перезапуск служб SQL Server с помощью сценария PowerShell.
- Запуск, остановка и перезапуск служб SQL Server в Ubuntu Linux.
- Запуск, остановка и перезапуск служб SQL Server с помощью диспетчера отказоустойчивого кластера сервера Windows.
Разберем все эти методы.
Диспетчер конфигурации SQL Server
Диспетчер конфигурации SQL Server — это инструмент для управления службами SQL Server, включенный в программный пакет SQL Server. Когда мы устанавливаем SQL Server, этот менеджер устанавливается автоматически.
Для управления службами запустите диспетчер конфигурации SQL Server и щелкните правой кнопкой мыши MSSQLSERVER . В диалоговом окне вы увидите параметры для запуска, остановки и перезапуска служб.
Рисунок 1. Использование диспетчера конфигурации SQL Server для управления службами SQL Server
Если происходит тайм-аут процесса или любая другая ошибка, он информирует пользователя о проблемах:
Рисунок 2. Окно предупреждения, создаваемое диспетчером конфигурации SQL Server
Сведения об ошибке доступны в средстве просмотра событий или журнале ошибок SQL Server.
Вы можете использовать SQL Server Management Studio для перезапуска служб.
Запуск SSMS -> Подключение к экземпляру SQL Server -> Щелкните правой кнопкой мыши Имя хоста .
Открывает контекстное меню с параметрами start, stop, pause и reboot :
Рисунок 3. Управление службами SQL Server с помощью SSMS
Services MMC (Консоль управления Microsoft) Службы MMC (Консоль управления Microsoft), выполните следующие действия:
Откройте Панель управления -> Административные инструменты -> Нажмите Службы -> Найти MSSQLSERVER -> Щелкните правой кнопкой мыши.
В диалоговом окне, которое открывается после щелчка правой кнопкой мыши, вы получаете опции запуска , остановки, и перезагрузки служб: Services. msc Команда для открытия Services MMC.
Команды PowerShell
Для запуска и остановки любой службы используйте Start-Service и Команда Stop-Service .
Запустите PowerShell и выполните следующую команду для запуска служб :
PS C:\WINDOWS\system32> Start-Service MSSQLSERVER
Чтобы просмотреть состояние службы SQL Server, откройте Диспетчер конфигурации SQL Server и нажмите на Служба SQL Server:
Рисунок 5. Результат выполнения команды Start-Service PowerShell
Следующая команда останавливает службу :
PS C:\WINDOWS\system32> Stop-Service -Force MSSQLSERVER
Рисунок 5. Результат выполнения команды Stop-Service PowerShell
Наконец, команда перезапустить службу SQL Server выглядит следующим образом:
PS C:\WINDOWS\system32> Restart-Service -Force MSSQLSERVER
Управление службами в Ubuntu Linux
В Ubuntu Linux мы должны использовать команду systemctl для управления службой SQL Server. Это команда Linux для управления сервис-менеджер и systemd система.
Чтобы проиллюстрировать этот вариант, я установил SQL Server 2019 на Ubuntu Linux. Примечание. Для управления службами необходимо использовать пользователя root. Если вы входите в систему как другой пользователь, выполните в терминале следующую команду:
[электронная почта защищена]:~$ sudo -i
Выполните следующую команду, чтобы остановить службу:
[электронная почта защищена]:~ # systemctl stop mssql-server.service
Рисунок 6. Выполнение команды stop в Linux
Мы не получаем никакой обратной связи от терминала для проверки статуса службы . Таким образом, чтобы проверить это, выполните команду:
[email protected]:~# systemctl status mssql-server. service
Рисунок 7. Проверка статуса службы в Linux
Следующая команда запускает службы SQL:
[email protected]:~# systemctl start mssql-server. service
Рисунок 8. Выполнение команды start services в Linux
Чтобы просмотреть статус, выполните следующую команду:
[электронная почта защищена]:~# systemctl status mssql-server.service
Рисунок 9. Просмотр состояния служб SQL Server в Linux
Для перезапуска службы используется следующая команда:
[электронная почта защищена]:~# systemctl restart mssql-server.service
Рисунок 10. Перезапустите службы SQL Server в Linux
Диспетчер отказоустойчивого кластера Windows Server
Управление службами SQL Server в автономном экземпляре и в среде отказоустойчивого кластера отличается. Мы можем использовать любой из вышеперечисленных методов, но, согласно рекомендациям Microsoft, мы должны использовать Windows 9.0136 Диспетчер отказоустойчивого кластера .
Когда мы устанавливаем SQL Server в кластерной среде, создается роль SQL Server. Мы можем просмотреть эту роль:
Откройте диспетчер отказоустойчивого кластера -> Щелкните Роли -> Щелкните правой кнопкой мыши роль MSSQLSERVER .