Параметры запуска службы Database Engine
Параметры запуска задают определенное расположение файлов, необходимых для запуска, а также некоторые условия для сервера. Большинству пользователей не нужно указывать параметры запуска, если вы не устраняете неполадки ядро СУБД или у вас есть необычная проблема, и они направлены на использование параметра запуска службой поддержки клиентов SQL Server.
Предупреждение
Неправильное использование параметров запуска может повлиять на производительность сервера и может предотвратить запуск SQL Server.
О параметрах запуска
При установке SQL Server программа установки записывает набор параметров запуска по умолчанию в реестре Microsoft Windows. С помощью этих параметров можно указать альтернативный файл базы данных master, файл журнала базы данных master и файл журнала ошибок. Если ядро СУБД не удается найти необходимые файлы, SQL Server не запустится.
Параметры запуска можно задать с помощью диспетчер конфигурации SQL Server. Дополнительные сведения см. в статье Настройка параметров запуска сервера (диспетчер конфигурации SQL Server).
Список параметров запуска
Параметры запуска по умолчанию | Description |
---|---|
-d master_file_path | Полный путь к файлу базы данных master (обычно это "C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\Master.mdf"). Если этот параметр не задан, используются параметры из реестра. |
-e error_log_path | Полный путь к файлу журнала ошибок (обычно это "C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Log\Errorlog"). Если этот параметр не задан, используются параметры из реестра. |
-l master_log_path | Полный путь к файлу журнала базы данных master (обычно это "C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf"). Если данный параметр не указан, будут использованы параметры из реестра. |
Дополнительные параметры запуска | Description |
---|---|
-c | Сокращает время запуска при запуске SQL Server из командной строки. Как правило, sql Server ядро СУБД запускается как услуга, вызывая диспетчер управления службами. Так как ядро СУБД SQL Server не запускается в качестве службы при запуске из командной строки, используйте -c, чтобы пропустить этот шаг. |
-f | Запускает экземпляр SQL Server с минимальной конфигурацией. Эта функция полезна в случае, если установленные значения конфигурации (например, слишком большой объем выделяемой памяти) не позволяют выполнить запуск сервера. Запуск SQL Server в минимальном режиме конфигурации помещает SQL Server в однопользовательский режим. Дополнительные сведения см. в описании параметра -m далее. |
-g memory_to_reserve | Указывает целое число мегабайт (МБ) памяти, которое SQL Server оставляет доступным для выделения памяти в процессе SQL Server, но за пределами пула памяти SQL Server. Память за пределами пула памяти — это область, используемая SQL Server для загрузки элементов, таких как расширенные .dll файлы процедур, поставщики OLE DB, на которые ссылается распределенные запросы, и объекты автоматизации, на которые ссылаются инструкции Transact-SQL. По умолчанию установлено значение 256 МБ. Этот параметр может помочь при настройке выделения памяти, но только в том случае, если объем физической памяти превышает предел, установленный операционной системой для виртуальной памяти, доступной для приложений. Использование этого параметра может быть подходящим в больших конфигурациях памяти, в которых требования к использованию памяти SQL Server являются нетипичными, и виртуальное адресное пространство процесса SQL Server полностью используется. Неправильное использование этого параметра может привести к условиям, при которых экземпляр SQL Server может не запускаться или возникать ошибки во время выполнения. Используйте значение по умолчанию для параметра -g , если в журнале ошибок SQL Server не отображаются следующие предупреждения: -"Сбой виртуального выделения байтов: FAIL_VIRTUAL_RESERVE <размер>" -"Сбой виртуального выделения байтов: FAIL_VIRTUAL_COMMIT <размер>" Эти сообщения могут указывать на то, что SQL Server пытается освободить части пула памяти SQL Server для поиска места для элементов, таких как расширенная хранимая процедура .dll файлами или объектами автоматизации. В этом случае рассмотрите возможность увеличения размера памяти, зарезервированной с помощью параметра -g . Если используемое значение меньше значения по умолчанию, объем памяти, доступной пулу ресурсов, управляемому диспетчером памяти SQL Server, и стекам потоков, увеличивается. В свою очередь увеличивается производительность требовательных к памяти рабочих нагрузок в системах, не использующих большое количество расширенных хранимых процедур, распределенных запросов и объектов автоматизации. |
-m | Запускает экземпляр SQL Server в однопользовательском режиме. При запуске экземпляра SQL Server в однопользовательском режиме только один пользователь может подключиться, и процесс CHECKPOINT не запускается. Процесс CHECKPOINT гарантирует, что завершенные транзакции будут периодически переписываться из кэша диска на устройство базы данных. Этот параметр применяется обычно при возникновении проблем с системными базами данных, которые необходимо исправить. При использовании этого параметра включается параметр sp_configure. По умолчанию параметр allow updates отключен. После запуска SQL Server в однопользовательском режиме каждый член локальной группы администраторов на компьютере сможет подключаться к экземпляру SQL Server от имени участника предопределенной роли сервера sysadmin. Дополнительные сведения см. в статье "Подключение к SQL Server при блокировке системных администраторов". Дополнительные сведения о однопользовательском режиме см. в разделе "Запуск SQL Server в режиме одного пользователя". |
-m"Имя клиентского приложения" | Ограничивает подключения к указанному клиентскому приложению при использовании параметра -m с SQLCMD или SQL Server Management Studio. Например, -m"SQLCMD" разрешает только одно подключение, которое должно идентифицироваться как клиентская программа SQLCMD. Используйте этот параметр при запуске SQL Server в однопользовательском режиме, а неизвестное клиентское приложение принимает единственное доступное подключение. Чтобы подключиться через Редактор запросов в Management Studio, используйте m"Microsoft SQL Server Management Studio — Query". В имени клиентского приложения учитывается регистр символов. ** Примечание по безопасности ** Не используйте этот параметр в качестве функции безопасности. Клиентское приложение предоставляет имя клиентского приложения и может указать ложное имя в составе строки подключения. |
-n | Не использует журнал приложений Windows для записи событий SQL Server. Если вы запускаете экземпляр SQL Server с -n, рекомендуется также использовать параметр запуска -e . В противном случае события SQL Server не регистрируются. |
-s | Позволяет запустить именованный экземпляр SQL Server. Если параметр -s не задан, будет выполнена попытка запустить экземпляр по умолчанию. Перед запуском программы sqlservr.exeв командной строке необходимо перейти в каталог BINN соответствующего экземпляра. Например, если экземпляр Instance1 должен использовать \mssql$Instance1 для своих двоичных файлов, для запуска sqlservr.exe -s instance1пользователь должен быть в каталоге \mssql$Instance1\binn. |
-T trace# | Указывает, что экземпляр SQL Server должен быть запущен с указанным флагом трассировки (trace#). Флаги трассировки используются для запуска сервера в нестандартном режиме. Дополнительные сведения см. в разделе Флаги трассировки (Transact-SQL). ** Важно ** При указании флага трассировки с параметром -T используйте верхний регистр "T", чтобы передать номер флага трассировки. Нижний регистр "t" принимается SQL Server, но этот параметр задает другие внутренние флаги трассировки, необходимые только инженерам поддержки SQL Server. (Параметры, установленные в окне запуска в области управления, не считываются.) |
-x | Отключает следующие функции наблюдения. Счетчики монитора производительности SQL Server Поддержку статистики времени ЦП и коэффициента попадания в кэш. Сбор данных для команды DBCC SQLPERF. Сбор данных для некоторых динамических административных представлений. Многие точки событий расширенных событий. ** Предупреждение ** При использовании параметра запуска -x сведения, доступные для диагностики производительности и функциональных проблем с SQL Server, значительно сокращаются. |
-E | Увеличивает число экстентов, выделяемых для каждого файла в файловой группе. Данный параметр может быть полезен для приложений с хранилищами данных, имеющих ограниченное число пользователей, которые запускают индексы или просматривают данные. Его нельзя использовать в других приложениях, так как он может неблагоприятно повлиять на производительность. Этот параметр не поддерживается в 32-разрядных выпусках SQL Server. |
Использование параметров запуска для устранения неполадок
Некоторые параметры запуска (например, однопользовательский режим или режим минимальной конфигурации) применяются, главным образом, во время устранения неполадок. Запустить сервер для устранения неполадок с параметром -m или -f проще всего из командной строки, вручную запустив sqlservr.exe.
Примечание.
При запуске SQL Server с помощью net start параметры запуска используют косую черту (/) вместо дефиса (-).
Использование параметров запуска в обычной работе
При каждом запуске SQL Server может потребоваться использовать некоторые параметры запуска. Эти параметры, такие как -g или начиная с флага трассировки, наиболее легко выполняются путем настройки параметров запуска с помощью диспетчер конфигурации SQL Server. Это средство сохраняет параметры запуска в качестве разделов реестра, что позволяет SQL Server всегда начинать с параметров запуска.
Поддержка совместимости
Параметр -h не поддерживается в SQL Server 2014. Этот параметр использовался в более ранних версиях 32-разрядных экземпляров SQL Server для резервирования адресного пространства виртуальной памяти для метаданных горячей добавления памяти при включении AWE. Дополнительные сведения см. в разделе Discontinued SQL Server Features in SQL Server 2014.
Связанные задачи
Настройка параметра конфигураци и сервера scan for startup procs