Параметры запуска службы Database Engine

Параметры запуска задают определенное расположение файлов, необходимых для запуска, а также некоторые условия для сервера. Большинству пользователей не нужно задавать параметры запуска за исключением случаев, когда устраняются проблемы служб Компонент Database Engine, либо если возникла неожиданная проблема и необходимо использовать параметр запуска по указанию поддержки пользователей служб SQL Server.

ПредупреждениеВнимание!

Неправильное использование параметров запуска может повлиять на производительность сервера или помешать запуску SQL Server.

О параметрах запуска

При установке SQL Server программа установки сохраняет набор параметров запуска в реестр Microsoft Windows. С помощью этих параметров можно указать альтернативный файл базы данных master, файл журнала базы данных master и файл журнала ошибок. Если компонент Компонент Database Engine не удается найти необходимые файлы, SQL Server на запустится.

Параметры запуска можно задать в диспетчере конфигурации SQL Server. Дополнительные сведения см. в разделе Настройка параметров запуска сервера (диспетчер конфигурации SQL Server).

Список параметров запуска

Параметры запуска по умолчанию

Описание

-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). Если данный параметр не указан, будут использованы параметры из реестра.

Дополнительные параметры запуска

Описание

-c

Ускоряет запуск SQL Server из командной строки. Обычно компонент Компонент SQL Server Database Engine запускается в виде службы путем вызова диспетчера управления службами. Поскольку Компонент SQL Server Database Engine не запускается как служба при запуске из командной строки, используйте параметр -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. По умолчанию параметр allow updates отключен. При запуске SQL Server в однопользовательском режиме любой член локальной группы администраторов компьютера может подключиться к экземпляру SQL Server в качестве члена преопределенной роли сервера sysadmin. Дополнительные сведения см. в разделе Подключение к SQL Server в случае, если доступ системных администраторов заблокирован. Дополнительные сведения об однопользовательском режиме см. в разделе Запуск SQL Server в однопользовательском режиме.

-m"Client Application Name"

Ограничивает соединения с заданным клиентским приложением, если параметр -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» для передачи номера флага трассировки. SQL Server принимает и строчную букву «t», но в этом случае устанавливаются другие внутренние флаги трассировки, которые необходимы только инженерам службы поддержки 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 2012. Этот параметр использовался в более ранних версиях 32-битных экземпляров SQL Server для резервирования виртуального адресного пространства для метаданных памяти с «горячей» заменой при включенных расширениях AWE. Дополнительные сведения см. в разделе Функции SQL Server, больше не поддерживаемые в SQL Server 2012.

Связанные задачи

Настройка параметра scan for startup procs Server Configuration Option

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

См. также

Справочник

CHECKPOINT (Transact-SQL)

Приложение sqlservr