Flagi śledzenia (Transact-SQL)

Flagi śledzenia są używane do tymczasowego zestaw właściwości określonego serwera lub wyłącz określonego działania.Na przykład, jeśli jest flaga śledzenia 3205 zestaw podczas wystąpienie SQL Server zostanie uruchomiony, kompresję sprzętową dla sterowników taśmy jest wyłączona. Flagi śledzenia są często używane do diagnozowania problemów z wydajnością lub debugowania przechowywane procedury lub złożonych komputerach.

W poniższej tabela wymieniono i opisano flagi śledzenia, które są dostępne w SQL Server.

Uwaga

Zachowanie flagi śledzenia mogą nie być obsługiwane w przyszłych wydaniach SQL Server.

Flagą śledzenia

Description

260

Wyświetla informacje o wersji dotyczące rozszerzona procedura składowana dołączanych dynamicznie bibliotek (DLL).Aby uzyskać więcej informacji na temat __GetXpVersion(), see Tworzenie dodatkowych przechowywanych procedur.

Zakres: globalne lub sesja

1204

Zwraca zasobów i typy blokad uczestniczących w zakleszczenie, a także bieżącego polecenia dotyczy.

Zakres: globalne tylko

1211

Wyłącza eskalacja blokad oparte na nacisk pamięci lub na podstawie liczby blokada s.The SQL Server Database Engine will not escalate row or strona locks to tabela locks.

Za pomocą tej flagi śledzenia mogą generować nadmiernej liczby blokad.Może to zmniejszyć wydajność Database Engine, lub powodować błędy 1204 (nie można przydzielić zasób blokada) z powodu niewystarczającej ilości pamięci. Aby uzyskać więcej informacji zobaczeskalacja blokad (aparat bazy danych).

Jeśli ustawione są obie flagi śledzenia 1211 i 1224, 1211 ma wyższy priorytet niż 1224.Ponieważ flagi śledzenia 1211 zapobiega eskalacji w każdym przypadek nawet pod ciśnieniem pamięci, zaleca się jednak używanie 1224.Pomoże to uniknąć błędów "limit czasu z blokowaniem", gdy używane są liczby blokad.

Zakres: globalne lub sesja

1222

Zwraca zasobów i typy blokad, które uczestniczą w zakleszczenie, a także bieżącego polecenia dotyczy w formacie XML, które nie są zgodne z dowolnego schematu XSD.

Zakres:globalne tylko

1224

Wyłącza eskalacja blokad na podstawie liczby blokad.Jednak ciśnienia pamięci nadal można uaktywnić eskalacji blokada.The Database Engine escalates row or strona locks to tabela (or partition) locks if the amount of memory used by blokada objects exceeds one of the following conditions:

  • Procent czterdzieści pamięci, która jest używana przez Database Engine, z wyłączeniem alokacji pamięci przy użyciu Address Windowing rozszerzenie (AWE). To jest stosowane tylko wtedy, gdy blokady parametrsp_configure is zestaw to 0.

  • Procent czterdzieści pamięci blokada, która została skonfigurowana przy użyciu blokada parametrsp_configure.Aby uzyskać więcej informacji zobaczSetting Server Configuration Options.

Jeśli ustawione są obie flagi śledzenia 1211 i 1224, 1211 ma wyższy priorytet niż 1224.Ponieważ flagi śledzenia 1211 zapobiega eskalacji w każdym przypadek nawet pod ciśnieniem pamięci, zaleca się jednak używanie 1224.Pomoże to uniknąć błędów "limit czasu z blokowaniem", gdy używane są liczby blokad.

NoteNote:
eskalacja blokad do tabela lub HoBT poziom rozdrobnienia również może być kontrolowane przy użyciu opcji LOCK_ESCALATION ALTER tabela instrukcja.

Zakres: globalne lub sesja

2528

Wyłącza sprawdzanie równoległych obiektów CHECKDB DBCC, CHECKFILEGROUP DBCC i CHECKTABLE DBCC.Domyślnie stopień proste jest automatycznie określana przez procesor kwerend.Maksymalny stopień proste jest skonfigurowane tak samo, jak z kwerendy równoległych.Aby uzyskać więcej informacji zobaczmax degree of parallelism Option.

DBCC równoległego zazwyczaj należy umożliwić po lewej.Dla CHECKDB DBCC procesor kwerend reevaluates i automatycznie dostosowuje proste z każdej tabela lub wsadowym zaznaczone tabele.Czasami sprawdzenie może zostać uruchomiony wtedy, gdy serwer jest prawie bezczynności.Administrator, który wie, że zwiększa obciążenie przed zakończeniem sprawdzania może być ręczne zmniejszyć lub wyłączyć proste.

Wyłączanie równoległe sprawdzanie DBCC może spowodować DBCC mają znacznie dłużej i jeśli DBCC jest uruchamiany z włączoną funkcją TABLOCK i proste zestaw, tabel może być ono zablokowane przez dłuższy czas.

Zakres: globalne lub sesja

3205

Domyślnie jeśli stacja taśm obsługuje kompresję sprzętową instrukcja automatyczna kopia zapasowa albo kopia zapasowa używa go.Z tej flagi śledzenia można wyłączyć kompresję sprzętową sterowników taśmy.Jest to przydatne, gdy użytkownik chce wymieniać taśmy z innych witryn lub stacje taśm, które nie obsługują kompresji.

Zakres: globalne lub sesja

3226

W następującym przykładzie usunięto rola aplikacji SQL Server. Po utworzeniu kopii zapasowych dziennika bardzo często te komunikaty sukcesu kumulują się szybko, powodując dzienniki błędów ogromny których wyszukiwanie innych wiadomości powodujących problemy.

Z tej flagi śledzenia można pominąć te wpisy dziennika.Jest to przydatne, jeśli korzystasz z kopii zapasowych dziennika częste i, jeśli żadna ze skryptów zależy od tych zapisów.

3608

Zapobiega SQL Server z automatyczne uruchamianie i odzyskiwanie dowolnej bazy danych, z wyjątkiem wzorzec bazy danych.Bazy danych zostanie uruchomiona i odzyskane, gdy dostępne.Niektóre funkcje, takie jak izolacja migawka i odczytu zadeklarowanej migawka, może nie działać.Użyj dla Moving System Databases i Przenoszenie bazy danych użytkownika. Nie należy używać podczas normalnego działania.

3625

Ogranicza ilość informacji, które są zwracane w komunikaty o błędach.Aby uzyskać więcej informacji zobaczKonfiguracja widoczność metadane.

Zakres: globalne tylko

4616

Powoduje, że metadane poziom serwera widoczna do ról aplikacji.W SQL Server, rola aplikacji nie może uzyskać dostępu do metadane poza własną bazę danych, ponieważ z ról aplikacji nie są skojarzone z obiektem poziom serwera. Jest to zmiana zachowania z wcześniejszych wersji programu SQL Server. Ustawienie tej flagi globalnej wyłącza nowych ograniczeń i do ról aplikacji uzyskać dostęp do metadane poziom serwera.

Zakres: globalne tylko

6527

Wyłącza generowanie automatyczna kopia zapasowa pamięci na pierwsze wystąpienie wyjątku limit pamięci w integracja środowiska CLR.Domyślnie SQL Server generuje automatyczna kopia zapasowa pamięci małych na pierwsze wystąpienie wyjątku limit pamięci w środowisko CLR. Zachowanie flagi śledzenia jest w następujący sposób:

  • Jeśli to jest używana jako flaga śledzenia uruchamiania, nigdy nie zostanie wygenerowany automatyczna kopia zapasowa pamięci.Jednak mogą być generowane automatyczna kopia zapasowa pamięci, jeśli używane są inne flagi śledzenia.

  • Włączenie tej flagi śledzenia na uruchomiony serwer automatyczna kopia zapasowa pamięci nie zostanie automatycznie wygenerowana od tego momentu.Jednak jeśli automatyczna kopia zapasowa pamięci został już wygenerowany ze względu na limit pamięci wyjątek w środowisko CLR, ta flaga śledzenia będzie miało żadnego efektu.

Zakres: globalne tylko

7806

Umożliwia połączenie dedykowane administratora (DAC) na SQL Server Express. Domyślnie brak zasobów DAC są rezerwowane na SQL Server Express. Aby uzyskać więcej informacji zobaczUsing a Dedicated Administrator Connection.

Zakres: globalne tylko

Remarks

W SQL Server, dostępne są dwa typy flag śledzenia: Identyfikator urządzenie źródłowe tabela.Flagi śledzenia sesja są aktywne dla połączenia i są widoczne tylko dla tego połączenia.Reprezentuje wysokie punkt końcowy dla kwerendy w tabela Zmiana LSN.Niektóre flag może być włączone tylko jako globalny, a niektóre mogą być włączone na albo globalny lub zakres sesja.

Obowiązują następujące reguły:

  • Flaga globalna śledzenie musi być włączony globalnie.W przeciwnym razie flagi śledzenia nie daje żadnego efektu.Zaleca się włączenie flagi globalnej śledzenia na początku, za pomocą -T opcja wiersza polecenia.

  • Jeśli flaga śledzenia albo globalny lub zakres sesja, można włączyć w odpowiednim zakresie.Flagi śledzenia, który jest włączony poziom sesja nigdy nie wpływa na inną sesja i efekt flagi śledzenia są tracone, gdy identyfikator SPID, który otwartych sesja wylogowuje.

Flagi śledzenia są ustawione lub wyłączyć za pomocą jednej z następujących metod:

  • Za pomocą polecenia DBCC TRACEON i TRACEOFF DBCC.

    Na przykład 2528 TRACEON DBCC: Aby globalnie włączyć flagę śledzenia, należy użyć TRACEON DBCC argument-1: DBCC TRACEON (2528, -1).To turn off a global trace flag, use DBCC TRACEOFF with the -1 argument.

  • Za pomocą -T opcji uruchamiania, aby określić, że flagi śledzenia zestaw podczas uruchamiania systemu.

    The -T startup option enables a trace flag globally.Nie można włączyć flagę poziom sesja śledzenia przy użyciu opcji uruchamiania.Aby uzyskać więcej informacji na temat opcji startowych zobacz Using the SQL Server Service Startup Options.

Polecenie DBCC TRACESTATUS służy do określenia flagi śledzenia, które są aktualnie aktywne.

Zachowanie zmian

W SQL Server 2000, wystarcza prosty TRACEON DBCC (1204) umożliwiające zakleszczenie zgłoszenie do dziennik błędów. W SQL Server 2008, należy włączyć flagę globalnie ponieważ flagi poziom sesja nie jest widoczny dla wątek monitorowania zakleszczenie.

Aby uzyskać więcej informacji na temat zmian w zachowaniu zobacz Breaking Changes to Database Engine Features in SQL Server 2008.

Przykłady

W poniższym przykładzie ustawiono flagę śledzenia 3205 na przy użyciu DBCC TRACEON.

DBCC TRACEON (3205,-1)