Flagi śledzenia (Transact-SQL)

Flagi śledzenia są używane, aby tymczasowo zestaw właściwości określonego serwera lub wyłączyć określone zachowanie.Na przykład, jeśli flagi śledzenia 3205 jest zestaw podczas wystąpienie SQL Server uruchamia, kompresję sprzętową sterowniki taśmowych urządzeń jest wyłączone.Flagi śledzenia są często używane do diagnozowania problemów z wydajnością lub debugowania procedur przechowywanych lub złożonych komputerach.

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

Ostrzeżenie

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

Flaga śledzenia

Opis

260

Drukuje informacje na temat wersji o rozszerzona procedura składowana bibliotek dołączanych dynamicznie (DLL).Aby uzyskać więcej informacji o __GetXpVersion(), zobacz Tworzenie rozszerzonych procedur przechowywanych.

Zakres:globalne lub sesja

1204

Zwraca zasoby i typy blokad uczestniczących w zakleszczenie , a także bieżące polecenia dotyczy.

Zakres:globalne tylko

1211

Wyłącza eskalację blokada oparte na ciśnienie pamięci lub na podstawie liczby blokad.Aparat baz danych programu SQL Server Nie będzie eskalować rzędu lub strona blokad blokady tabela .

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

Jeśli obie flagi śledzenia 1211 i 1224 są zestaw, 1211 pierwszeństwo 1224 powyżej.Ponieważ flagi śledzenia 1211 zapobiega eskalacji w każdym przypadek, nawet pod ciśnieniem pamięci, firma Microsoft zaleca jednak używać 1224.Pomoże to uniknąć "limit czasu blokady" błędy, gdy używanych jest wiele blokad.

Zakres: globalne lub sesja

1222

Zwraca zasobów i typy blokad, które uczestniczą w zakleszczenie , a także bieżące polecenia wpływ w formacie XML, który nie jest zgodny z dowolnego schematu XSD.

Zakres:globalne tylko

1224

Wyłącza eskalację blokada , na podstawie liczby blokad.Jednakże presji pamięci nadal można uaktywnić eskalację blokada .Aparat baz danych Przypiszą rzędu lub strona blokad blokady tabela (lub partycji), jeśli ilość pamięci używanej przez blokada obiektów przekracza jeden z następujących warunków:

  • Czterdzieści procent pamięci, który jest używany przez Aparat baz danych, wyłącznego przydziału pamięci przy użyciu Address Windowing rozszerzenie (AWE).To jest stosowane tylko wtedy, gdy blokad parametr sp_configure jest zestaw na wartość 0.

  • Czterdzieści procent pamięci blokada , który jest skonfigurowany przy użyciu blokad parametr sp_configure.Aby uzyskać więcej informacji, zobacz Ustawianie opcji konfiguracji serwera.

Jeśli obie flagi śledzenia 1211 i 1224 są zestaw, 1211 pierwszeństwo 1224 powyżej.Ponieważ flagi śledzenia 1211 zapobiega eskalacji w każdym przypadek, nawet pod ciśnieniem pamięci, firma Microsoft zaleca jednak używać 1224.Pomoże to uniknąć "limit czasu blokady" błędy, gdy używanych jest wiele blokad.

UwagaUwaga:
Zablokuj eskalacji do tabela- lub HoBT -poziom ziarnistość może być także kontrolowany za pomocą opcji LOCK_ESCALATION ALTER TABLE instrukcja.

Zakres:globalne lub sesja

2528

Wyłącza równoległe sprawdzanie obiektów DBCC CHECKDB, DBCC CHECKFILEGROUP i DBCC CHECKTABLE.Domyślnie stopień równoległości prostych jest automatycznie określany przez procesor kwerend.Maksymalny stopień równoległości prostych jest skonfigurowane tak samo, jak z równoległych kwerend.Aby uzyskać więcej informacji, zobacz maksymalny stopień równoległości prostych opcji.

DBCC równoległego zazwyczaj powinno być pozostało włączone.DBCC CHECKDB procesor kwerend reevaluates i automatycznie dostosowuje równoległości prostych z każdej tabela lub partia zaznaczone tabele.Czasami sprawdzanie może zostać uruchomiony, gdy serwer jest prawie bezczynności.Administrator, który wie, że obciążenie zwiększy przed zakończeniem sprawdzania może być ręcznie zmniejszyć lub wyłączyć proste.

Wyłączanie równoległe sprawdzanie DBCC mogą powodować DBCC potrwać znacznie dłużej i jeśli DBCC jest uruchamiana z włączoną funkcją TABLOCK i równoległości prostych zestaw wyłączać, tabele może być zablokowana przez dłuższy czas.

Zakres: globalne lub sesja

3205

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

Zakres: globalne lub sesja

3226

Domyślnie każdej operacji pomyślne kopia zapasowa dodaje wpis w SQL Server dziennik błędów oraz informacje zdarzenie systemuJeśli tworzenie kopii zapasowych dziennika bardzo często te wiadomości sukces gromadzą się szybko, wynikające w dziennikach ogromny błąd, w których znajdowanie innych wiadomości jest problematyczne.

Z tej flagi śledzenia można pominąć te wpisy dziennika.Jest to przydatne, jeśli są uruchomione kopii zapasowych dziennika częste i brak skrypty są zależne od tych zapisów.

3608

Zapobiega SQL Server z automatyczne uruchamianie i odzyskiwanie dowolnej bazy danych, z wyjątkiem wzorca bazy danych. Bazy danych zostanie uruchomiona i odzyskane, gdy dostęp do.Niektóre funkcje, takie jak migawka izolacji i odczytu popełnione migawkamogą nie działać.Use for Przenoszenie systemowych baz danych and Przenoszenie baz danych użytkowników.Nie należy używać podczas normalnego działania.

3625

Ogranicza ilość informacji zwracanych w komunikaty o błędach.Aby uzyskać więcej informacji, zobacz Konfiguracja widoczność metadanych.

Zakres: globalne tylko

4199

Określa wiele zmian optymalizator kwerendy wcześniej dokonanych na podstawie wielu flagi śledzenia.Aby uzyskać więcej informacji, zobacz pomocy technicznej firmy Microsoft artykuł.

Zakres: globalne lub sesja

4616

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

Zakres: globalne tylko

6527

Wyłącza generowanie automatyczna kopia zapasowa pamięci na pierwsze wystąpienie wyjątek braku pamięci w CLR integracja.Domyślnie SQL Server generuje małego automatyczna kopia zapasowa na pierwsze wystąpienie wyjątek braku pamięci w CLR.Zachowanie flagi śledzenia jest następująca:

  • Jeśli to jest używany jako flagi śledzenia uruchamiania, nigdy nie jest generowany 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 serwerze uruchomionym automatyczna kopia zapasowa pamięci nie zostaną automatycznie wygenerowane od tego momentu na.Jednakże jeśli już została wygenerowana ze względu na wyjątek braku pamięci w środowisko CLR automatyczna kopia zapasowa pamięci, ta flaga śledzenia nie będą działać.

Zakres: globalne tylko

7806

Włącza dedykowanego połączenia administracyjnego (DAC) na SQL Server Express.Domyślnie żadne zasoby DAC są zarezerwowane na SQL Server Express.Aby uzyskać więcej informacji, zobacz Za pomocą dedykowanego połączenia administracyjnego.

Zakres: globalne tylko

Uwagi

W SQL Server, istnieją dwa typy flagi śledzenia: sesja i globalne.Flagi śledzenia sesji są aktywne połączenia i są widoczne tylko dla tego połączenia.Flagi śledzenia globalne są zestaw na poziom serwera i są widoczne dla każdego połączenia na serwerze.Niektóre flagi można włączyć tylko jako globalną i niektóre może być włączone albo globalny lubzakres sesja.

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

  • Flagi śledzenia globalny musi być włączony globalnie.W przeciwnym razie flagi śledzenia nie ma znaczenia.Zaleca się włączenie flagi globalnej śledzenia przy uruchamianiu, za pomocą -T opcji wiersza polecenia.

  • Jeśli flaga śledzenia albo globalny lubzakres sesja, można włączyć z odpowiedniego zakres. Flagi śledzenia, który jest włączony na sesja poziom nigdy nie wpływa na innej sesjai efekt flagi śledzenia są tracone, gdy identyfikator SPID, który otwarcia sesja wylogowuje.

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

  • Za pomocą polecenia DBCC TRACEON i DBCC TRACEOFF.

    Na przykład 2528 TRACEON DBCC: Aby globalnie włączyć flagę śledzenia, należy DBCC TRACEON z argumentu-1: DBCC TRACEON (2528, -1).Aby wyłączyć flagę globalną śledzenia, za pomocą DBCC TRACEOFF argument-1.

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

    -T opcji startowej włącza flagę śledzenia globalnie.Nie można włączyć sesja-poziom flagi śledzenia przy użyciu opcji uruchamiania.Aby uzyskać więcej informacji o opcjach startowych, zobacz Za pomocą SQL Server opcje uruchamiania usługi.

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

Zachowanie zmian

W SQL Server 2000, proste DBCC TRACEON (1204) wystarcza włączyć zakleszczenie raportowanie dziennik błędów.W SQL Server 2008, musisz włączyć flagę globalnie, ponieważ nie jest widoczny dla monitorowania zakleszczenie wątek sesja- flagapoziom .

Aby uzyskać więcej informacji na temat zmian w zachowaniu, zobacz Dzielenie zmienia funkcje aparatu bazy danych programu SQL Server 2008 R2.

Przykłady

Poniższy przykład ustawia flagę śledzenia 3205 na za pomocą DBCC TRACEON.

DBCC TRACEON (3205,-1)

Historia zmian

Zaktualizowaną zawartość

Flaga śledzenia dodano 4199.