Ustawić flagi śledzenia „na stałe” w programie SQL Server?

25

Musimy użyć SQL Server Flagi śledzenia 7646, aby złagodzić blokowanie pełnego tekstu, ale z niepokojem zauważyłem, że flaga śledzenia sama się „rozbroiła”, prawdopodobnie po ponownym uruchomieniu serwera bazy danych.

Użyłem

DBCC TRACEON (7646, -1)

ustawić flagę śledzenia i

DBCC TRACESTATUS

aby pokazać wszystkie flagi śledzenia, które powiedziały mi, że nie zostało ustawione (chyba po ponownym uruchomieniu komputera). Aby ustawić flagę śledzenia na stałe, zrobiłem to:

  • poszedł do SQL Server Configuration Manager
  • wyświetlane właściwości usługi SQL Server
  • odwiedził zakładkę Zaawansowane
  • edytował opcję Parametry uruchamiania

i dodał

; -T {tracenumber}

do końca, tak ...

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

Czy to jest poprawne? Znajduję sprzeczne wyniki w składni parametrów uruchamiania programu SQL Server .

Jeff Atwood
źródło
FYI: Jest tu artykuł na temat ustawiania parametrów uruchamiania za pomocą T-SQL: sqlservercentral.com/articles/Automation/105511
JohnLBevan
ps. W związku z powyższym następujący select * from sys.dm_server_registry where value_name like 'SQLArg%'
kod

Odpowiedzi:

15

Tak, to zrobi za ciebie. To znaczy przy użyciu parametru początkowego -T {traceflag}.

squillman
źródło
11

Nauczyłem się na własnej skórze, że przed każdą flagą śledzenia musisz mieć średnik. Na przykład, jeśli włączyłeś rejestrowanie informacji o zakleszczeniu do pliku, twój przykład stałby się ...

-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

Odstępy między flagami śledzenia powodują, że późniejsze flagi są ignorowane.

GaTechThomas
źródło