Установка флагов трассировки "Постоянно" в SQL Server?

Нам нужно использовать SQL Server Trace Flag 7646, чтобы помочь смягчить некоторые полнотекстовые блокировки, но я был встревожен, обнаружив, что флаг трассировки сам "сбрасывается", возможно, при перезагрузке сервера базы данных.

Я использовал

DBCC TRACEON (7646, -1)

установить флаг трассировки и

DBCC TRACESTATUS

чтобы показать все флаги трассировки, которые сказали мне, что он не был установлен (после перезагрузки, я думаю). Чтобы установить флаг трассировки постоянно, я сделал это:

  • пошел в диспетчер конфигурации SQL Server
  • просмотренные свойства для службы SQL Server
  • посетил вкладку "Дополнительно"
  • отредактировал опцию параметров запуска

и добавил

;-T{tracenumber}

до конца, вот так...

-dD: \ MSSQL10.MSSQLSERVER \ MSSQL \ DATA \ master.mdf; -eD: \ MSSQL10.MSSQLSERVER \ MSSQL \ Log \ ERRORLOG; -lD: \ MSSQL10.MSSQLSERVER \ MSSQL \ DATA \ mastlog.ldf ; -T7646

Это верно? Я нахожу противоречивые результаты по синтаксису для параметров запуска SQL Server.

2 ответа

Решение

Да, это будет делать это для вас. Используя параметр запуска -T{traceflag}, то есть.

Трудным путем я научился тому, что перед каждым флагом трассировки нужно ставить точки с запятой. Например, если вы включили запись информации о взаимоблокировке в файл, ваш пример станет...

-dD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf;-
eD:\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-
lD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.l
df;-T7646;-T3605;-T1204;-T1222

Пробелы между флагами трассировки приводят к игнорированию более поздних флагов.

Другие вопросы по тегам