DBCC TRACEON – Ablaufverfolgungsflags

GILT FÜR: SQL Server Azure SQL Managed Instance Azure Synapse Analytics Parallel Data Warehouse

Ablaufverfolgungsflags werden zum Festlegen bestimmter Servereigenschaften oder zum Ändern eines bestimmten Verhaltens verwendet. Das Ablaufverfolgungsflag 3226 ist beispielsweise ein häufig verwendetes Startablaufverfolgungsflag, das erfolgreiche Sicherungsmeldungen im Fehlerprotokoll unterdrückt. Ablaufverfolgungsflags werden häufig verwendet, um Leistungsprobleme oder komplexe Computersysteme zu diagnostizieren. Sie werden jedoch auch vom Microsoft-Support empfohlen, um gegen Verhalten vorzugehen, das eine Arbeitsauslastung negativ beeinträchtigt. Alle dokumentierten Ablaufverfolgungsflags und die, die vom Microsoft-Support empfohlen werden, werden in Produktionsumgebungen vollständig unterstützt, wenn sie gemäß der Anweisungen verwendet werden. Beachten Sie, dass für die Verwendung der jeweiligen Ablaufverfolgungsflags in dieser Liste möglicherweise zusätzliche Informationen erforderlich sind. Sie sollten die Empfehlungen, die hier oder von Ihrem Supporttechniker genannt werden, sorgfältig überprüfen. Wie bei jeder Konfigurationsänderung in SQL Server wird immer empfohlen, das Flag gründlich in einer Umgebung zu testen, die keine Produktionsumgebung ist, bevor Sie es bereitstellen.

Bemerkungen

In SQL Server gibt es drei Bereiche in denen Ablaufverfolgungsflags funktionieren können: „Abfrage“, „Sitzung“ oder „Global“. Ablaufverfolgungsflags des Typs „Abfrage“ sind im Kontext einer bestimmten Abfrage aktiv. Ablaufverfolgungsflags vom Typ Sitzung sind für die Dauer einer Verbindung aktiv und nur für diese Verbindung sichtbar. Globale Ablaufverfolgungsflags werden auf Serverebene festgelegt und sind für jede Verbindung auf dem Server sichtbar. Einige Flags können nur als globale Flags aktiviert werden, einige können entweder mit globalem Bereich oder mit Sitzungsbereich aktiviert werden.

Es gelten die folgenden Regeln:

  • Ein globales Ablaufverfolgungsflag muss global aktiviert werden. Andernfalls hat das Ablaufverfolgungsflag keine Wirkung. Es wird empfohlen, globale Ablaufverfolgungsflags beim Start mithilfe der Befehlszeilenoption -T zu aktivieren. Dadurch wird sichergestellt, dass das Ablaufverfolgungsflag nach dem Neustart eines Servers aktiv bleibt. Starten Sie SQL Server neu, damit das Ablaufverfolgungsflag wirksam wird.
  • Entspricht ein Ablaufverfolgungsflag dem Typ „global“, „Sitzung“ oder „Abfrage“, kann es für den jeweils entsprechenden Bereich aktiviert werden. Ein auf Sitzungsebene aktiviertes Ablaufverfolgungsflag wirkt sich nie auf andere Sitzungen aus, und die Wirkung des Ablaufverfolgungsflags endet mit der Abmeldung der SPID, die die Sitzung geöffnet hat.

Ablaufverfolgungsflags werden mithilfe einer der folgenden Methoden auf ON oder OFF festgelegt:

  • Verwendung der Befehle DBCC TRACEON und DBCC TRACEOFF:
    Um das Ablaufverfolgungsflag 2528 global zu aktivieren, verwenden Sie DBCC TRACEON mit dem Argument -1: DBCC TRACEON (2528, -1). Die Auswirkungen der Aktivierung eines globalen Ablaufverfolgungsflags mit DBCC TRACEON gehen beim Serverneustart verloren. Um das globale Ablaufverfolgungsflag zu deaktivieren, verwenden Sie DBCC TRACEOFF mit dem Argument -1.
  • Mithilfe der Startoption -T können Sie angeben, dass das Ablaufverfolgungsflag beim Start aktiviert werden soll.
    Durch die Startoption -T wird ein Ablaufverfolgungsflag global aktiviert. Ablaufverfolgungsflags auf Sitzungsebene können nicht mit einer Startoption aktiviert werden. Dadurch wird sichergestellt, dass das Ablaufverfolgungsflag nach dem Neustart eines Servers aktiv bleibt. Weitere Informationen finden Sie unter Startoptionen für den Datenbank-Engine-Dienst.
  • Auf Abfrageebene mithilfe des Abfragehinweises QUERYTRACEON. Die Option „QUERYTRACEON“ wird nur für Ablaufverfolgungsflags der in der Tabelle unten erläuterten Abfrageoptimierer unterstützt.

Mithilfe des Befehls DBCC TRACESTATUS lässt sich bestimmen, welche Ablaufverfolgungsflags zurzeit aktiv sind.

Ablaufverfolgungsflags

In der folgenden Tabelle werden die in SQL Server verfügbaren Ablaufverfolgungsflags aufgelistet und beschrieben.

Hinweis

Azure SQL Managed Instance unterstützt die folgenden globalen Ablaufverfolgungsflags: 460, 2301, 2389, 2390, 2453, 2467, 7471, 8207, 9389, 10316 und 11024. Sitzungs-Ablaufverfolgungflags werden in der verwalteten Instanz noch nicht unterstützt.

Hinweis

Einige Ablaufverfolgungsflags wurden in bestimmten SQL Server-Versionen eingeführt. Weitere Informationen zur anwendbaren Version finden Sie im Microsoft Support-Artikel zum jeweiligen Ablaufverfolgungsflag.

Wichtig

Das Verhalten von Ablaufverfolgungsflags wird in zukünftigen Versionen von SQL Server möglicherweise nicht mehr unterstützt.

Ablaufverfolgungsflag BESCHREIBUNG
101 Dieses Flag erhöht die Genauigkeit der Protokollierung des Mergereplikations-Agents.

WICHTIG: Ablaufverfolgungsflag 101 kann nur für den Replikationsmerge-Agent mithilfe der Option -T bei Ausführung von replmerg.exe über die Eingabeaufforderung aktiviert werden.

WARNUNG: Das Ablaufverfolgungsflag 101 ist nicht dafür konzipiert, dauerhaft in einer Produktionsumgebung aktiviert zu werden. Es dient nur zur zeitlich begrenzten Problembehandlung. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: Nur Replikationsmerge-Agent
102 Dieses Flag erhöht die Genauigkeit der Protokollierung des Mergereplikations-Agents und leitet sie an die Tabelle <Distribution server>..msmerge_history weiter.

WICHTIG: Ablaufverfolgungsflag 102 kann nur für den Replikationsmerge-Agent mithilfe der Option -T bei Ausführung von replmerg.exe über die Eingabeaufforderung aktiviert werden.

WARNUNG: Das Ablaufverfolgungsflag 102 ist nicht dafür konzipiert, dauerhaft in einer Produktionsumgebung aktiviert zu werden. Es dient nur zur zeitlich begrenzten Problembehandlung. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: Nur Replikationsmerge-Agent
139 Erzwingt die richtige Konvertierungssemantik im Bereich der DBCC-Prüfbefehle wie DBCC CHECKDB, DBCC CHECKTABLE und DBCC CHECKCONSTRAINTS, wenn damit auf einer Datenbank mit einem niedrigeren Kompatibilitätsgrad die verbesserte Genauigkeit und die Konvertierungslogik analysiert wird, die mit dem Kompatibilitätsgrad 130 für bestimmte Datentypen eingeführt wurde. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) RTM CU3, SQL Server 2016 (13.x) SP1 und höheren Builds verfügbar.

WARNUNG: Das Ablaufverfolgungsflag 139 ist nicht dafür vorgesehen, kontinuierlich in einer Produktionsumgebung aktiviert zu sein, und sollte nur dazu verwendet werden, ausschließlich die in diesem Microsoft-Support-Artikel beschriebenen Datenbanküberprüfungen auszuführen. Es sollte sofort deaktiviert werden, wenn die Überprüfungen abgeschlossen sind.

Bereich: nur global
174 Erhöht die SQL Server-Datenbank-Engine-Plancache-Bucketanzahl von 40.009 auf 160.001 auf 64-Bit-Systemen. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: nur global
176 Aktiviert eine Korrektur von Adressfehlern beim Online-Neuerstellen von Partitionen für Tabellen, die eine berechnete Partitionierungsspalte enthalten. Weitere Informationen finden Sie in diesem Microsoft-Support-Artikel und in diesem Microsoft-Support-Artikel.

Bereich: global oder Sitzung
205 Meldet an das Fehlerprotokoll, wenn eine von Statistiken abhängige gespeicherte Prozedur aufgrund einem automatischen Statistikupdate neu kompiliert wird. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Das Ablaufverfolgungsflag erfordert, dass das Ablaufverfolgungsflag 3605 aktiviert ist.

Bereich: nur global
260 Druckt die Versionsinformationen zu den DLLs (Dynamic Link Libraries) von erweiterten gespeicherten Prozeduren. Weitere Informationen zu GetXpVersion() finden Sie unter Erstellen erweiterter gespeicherter Prozeduren.

Bereich: global oder Sitzung
272 Deaktiviert die Vorabbelegung von Identitätswerten, um Lücken in einer Identitätsspalte zu vermeiden, wenn der Server unerwartet neu gestartet oder ein Failover zu einem sekundären Server ausgeführt wird. Beachten Sie, dass das Identitätszwischenspeichern verwendet wird, um die Leistung von INSERT in Tabellen mit Identitätsspalten zu verbessern.

Hinweis: Informieren Sie sich unter ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL) über die IDENTITY_CACHE-Option, um dies ab SQL Server 2017 (14.x) auf Datenbankebene zu ermöglichen.

Bereich: nur global
460 Ersetzt die Datenkürzungsmeldungs-ID 8152 durch die ID 2628. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Informationen dazu, wie Sie dies ab SQL Server 2019 (15.x) auf Datenbankebene erreichen, finden Sie unter VERBOSE_TRUNCATION_WARNINGS im Artikel ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2017 (14.x) CU12 und höheren Builds verfügbar.

Hinweis: Ab einem Datenbank-Kompatibilitätsgrad von 150 lautet die Meldungs-ID standardmäßig 2628 und das Ablaufverfolgungsflag hat keine Auswirkungen.

Bereich: global oder Sitzung
610 Steuert minimal protokollierte Einfügungen in volltextindizierte Tabellen. Dieses Ablaufverfolgungsflag ist ab SQL Server 2016 nicht erforderlich, da die minimale Protokollierung standardmäßig für volltextindizierte Tabellen aktiviert ist. Wenn der Massenladevorgang bewirkt, dass eine neue Seite zugewiesen wird, werden alle Zeilen in SQL Server 2016 (13.x), die diese neue Seite zeilenweise auffüllen, minimal protokolliert, wenn alle anderen Voraussetzungen für eine minimale Protokollierung erfüllt sind. Die in die vorhandenen Seiten eingefügten Zeilen (keine neue Seitenzuordnung), mit denen die Indexreihenfolge beibehalten wird, werden weiterhin vollständig protokolliert, so wie auch Zeilen, die infolge von Seitenteilungen während des Ladens verschoben werden. Es ist auch wichtig, dass ALLOW_PAGE_LOCKS für Indizes aktiviert ist (ON ist die Standardeinstellung), damit die minimale Protokollierung funktioniert, da während der Zuordnung Seitensperren auftreten und somit nur Seiten- oder Blockzuordnungen protokolliert werden. Weitere Informationen finden Sie unter The Data Loading Performance Guide (Leitfaden zur Leistungsverbesserung beim Laden von Daten).

Bereich: global oder Sitzung
634 Deaktiviert die im Hintergrund ausgeführte Columnstore-Komprimierung. SQL Server führt regelmäßig im Hintergrund den Tupelverschiebungsvorgang aus, durch den Zeilengruppen des Columnstore-Indexes mit nicht komprimierten Daten komprimiert werden. Diese Aufgabe wird pro Zeilengruppe ausgeführt.

Die Columnstore-Komprimierung verbessert die Abfrageleistung, beansprucht gleichzeitig aber auch Systemressourcen. Sie können den Zeitpunkt der Columnstore-Komprimierung manuell steuern, indem Sie die Hintergrundkomprimierungsaufgabe mit Ablaufverfolgungsflag 634 deaktivieren und anschließend zu einem beliebigen Zeitpunkt explizit ALTER INDEX...REORGANIZE oder ALTER INDEX...REBUILD aufrufen.

Bereich: nur global
652 Deaktiviert vorab ausgewählte Scans für die Seite. Wenn Sie das Ablaufverfolgungsflag 652 aktivieren, nimmt SQL Server keine weiteren Datenbankseiten in den Pufferpool auf, bevor diese Datenbankseiten von den Scans genutzt werden. Daher weisen Abfragen eine geringere Leistung auf, die das Vorabruffeature für Seiten nutzen.

Bereich: global oder Sitzung
661 Deaktiviert den Entfernungsvorgang für den inaktiven Datensatz. Das Ablaufverfolgungsflag 661 deaktiviert den Vorgang zur Entfernung von inaktiven Datensätzen. Ein inaktiver Datensatz ist das Ergebnis eines Löschvorgangs. Wenn Sie einen Datensatz löschen, wird der gelöschte Datensatz als inaktiver Datensatz beibehalten. Der gelöschte Datensatz wird später durch den Vorgang zur Entfernung von inaktiven Datensätzen endgültig gelöscht. Wenn Sie diesen Prozess deaktivieren, wird der gelöschte Datensatz nicht endgültig gelöscht. Daher wird der vom gelöschten Datensatz belegte Speicherplatz nicht freigegeben. Dieses Verhalten wirkt sich auf die Speicherplatznutzung und die Leistung von Scanvorgängen aus. Weitere Informationen finden Sie im Leitfaden zum Prozess für das Cleanup inaktiver Datensätze.

Bereich: nur global
692 Deaktiviert schnelle Einfügungen beim Massenladen von Daten in den Heap oder gruppierten Index. Ab SQL Server 2016 (13.x) sind schnelle Einfügungen standardmäßig aktiviert. So wird die minimale Protokollierung genutzt, wenn das einfache oder massenprotokollierte Wiederherstellungsmodell für die Datenbank festgelegt ist, um die Leistung beim Einfügen für Datensätze zu optimieren, die in neue Seiten eingefügt werden. Mit schnellen Einfügungen erhält jeder massengeladene Batch neue Blöcke, wobei die Zuordnungssuche nach vorhandenen Blöcken mit verfügbarem freien Speicherplatz beim Einfügen umgangen wird, um die Leistung zu optimieren.

Beim schnellen Einfügen können Massenladevorgänge mit kleinen Batchgrößen dazu führen, dass viel nicht verwendeter Speicherplatz von Objekten verbraucht wird. Daher empfehlen sich große Batches, um den Block vollständig auszufüllen. Falls große Batches nicht möglich sind, kann dieses Ablaufverfolgungsflag dabei helfen, nicht verwendeten Speicherplatz zu reduzieren. Dies hat jedoch Auswirkungen auf die Leistung.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) RTM und höheren Builds verfügbar.

Bereich: global oder Sitzung
715 Aktiviert Tabellensperren für Massenladevorgänge in einen Heap ohne nicht gruppierte Indizes. Wenn dieses Ablaufverfolgungsflag aktiviert ist, erhalten Massenladevorgänge Massenupdatesperren (Bulk Update, BU), wenn Daten massenhaft in eine Tabelle kopiert werden. Massenupdatesperren werden verwendet, damit mehrere Threads gleichzeitig Daten in dieselbe Tabelle massenladen können, während sie zugleich anderen Prozessen, die keine Daten massenladen, den Zugriff auf die Tabelle verwehren.

Dieses Verhalten ähnelt demjenigen, das auftritt, wenn Benutzer während des Massenladens explizit einen TABLOCK-Hinweis angibt oder wenn die Tabellensperre sp_tableoption beim Massenladen für eine bestimmte Tabelle aktiviert ist. Wenn jedoch dieses Ablaufverfolgungsflag aktiviert ist, ist dieses Verhalten die Standardeinstellung, ohne dass Abfragen oder Datenbanken geändert werden.

Bereich: global oder Sitzung
818 Ermöglicht zusätzliche E/A-Diagnosen, um während Datei-E/A-Vorgängen nach den Zuständen „Lost Write“ (Verlorener Schreibvorgang) oder „Stale Read“ (Veralteter Lesevorgang) zu suchen. Das Ablaufverfolgungsflag 818 ermöglicht einen In-Memory-Ringpuffer, mit dem die letzten 2.048 erfolgreich von SQL Server durchgeführten Schreibvorgänge (mit Ausnahme von Sortier- und Arbeitsdatei-E/As) nachverfolgt werden können. Wenn Fehler wie die Fehler 605, 823 oder 3448 auftreten, wird der Wert der Protokollfolgenummer (LSN) des eingehenden Puffers mit der Liste der letzten Schreibvorgänge abgeglichen. Wenn die abgerufene LSN älter ist als die im Rahmen des Schreibvorgangs angegebene, wird eine neue Fehlermeldung im SQL Server-Fehlerprotokoll gespeichert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2017 (14.x) hat dieses Ablaufverfolgungsflag keine Auswirkungen.

Bereich: nur global
834 Verwendet die Zuteilung große Seiten für einen Pufferpool, Columnstore und In-Memory-Tabellen. Die Größe der großen Seite variiert abhängig von der Hardwareplattform, die Seitengröße kann jedoch zwischen 2 MB und 16 MB liegen. Große Seiten werden beim Start zugeordnet und für die gesamte Lebensdauer des Prozesses beibehalten. Das Ablaufverfolgungsflag 834 verbessert die Leistung, indem die Effizienz des TLB (Translation Lookaside Buffer, Übersetzungspuffer) in der CPU erhöht wird. Das bedeutet, dass das Ablaufverfolgungsflag 834 die Effizienz der Verwaltung der Übersetzung von physischen Speicheradressen in virtuelle verbessert, die von Hardware für die Speicherverwaltung durchgeführt wird. Weitere Informationen zu SQL Server und großen Seiten finden Sie in diesem Blogbeitrag.

Hinweis: Das Ablaufverfolgungsflag 834 gilt nur für 64-Bit-Versionen von SQL Server. Sie benötigen das Benutzerrecht „Seiten im Arbeitsspeicher sperren“, um das Ablaufverfolgungsflag 834 zu aktivieren. Sie können das Ablaufverfolgungsflag 834 nur beim Start aktivieren. Das Ablaufverfolgungsflag 834 kann verhindern, dass der Server gestartet wird, wenn der Speicher fragmentiert ist und wenn große Seiten nicht zugeordnet werden können. Daher eignet sich das Ablaufverfolgungsflag 834 am besten für Server, die für SQL Server dediziert sind.

Hinweis: Wenn aktiviert, weist das Speichermodell für große Seiten den gesamten SQLOS-Speicher beim Starten der Instanz vorab zu und gibt diesen Speicher nicht an das Betriebssystem zurück.

Hinweis: Wenn Sie das Feature „Columnstore-Index“ in SQL Server 2012 (11.x) bis SQL Server 2019 (15.x) verwenden, wird von der Aktivierung des Ablaufverfolgungsflags 834 abgeraten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel. Wenn Sie SQL Server 2019 (15.x) und Columnstore verwenden, lesen Sie stattdessen das Ablaufverfolgungsflag 876.

Bereich: nur global
836 Verwenden Sie die maximale Serverarbeitsspeicheroption für den Pufferpool. Das Ablaufverfolgungsflag 836 führt dazu, dass SQL Server die Größe des Pufferpools beim Start basierend auf dem Wert der maximalen Serverarbeitsspeicheroption anpasst, anstatt basierend auf dem gesamten physischen Speicher. Sie können das Ablaufverfolgungsflag 836 verwenden, um die Anzahl der Pufferdeskriptoren zu reduzieren, die beim Start im 32-Bit-AWE-Modus (Address Windowing Extensions) zugeordnet werden.

Hinweis: Das Ablaufverfolgungsflag 836 gilt nur für 32-Bit-Versionen von SQL Server, für die die AWE-Zuteilung aktiviert ist. Sie können das Ablaufverfolgungsflag 836 nur beim Start aktivieren.

Bereich: nur global
845 Aktiviert gesperrte Seiten in Standard-SKUs von SQL Server, wenn die Berechtigung „Lock Pages in Memory“ (Sperren von Seiten im Speicher) für das Dienstkonto für SQL Server aktiviert wurde. Weitere Informationen finden Sie in diesem Microsoft Support-Artikel und unter Serverkonfigurationsoptionen für den Serverarbeitsspeicher.

Hinweis: Ab SQL Server 2012 (11.x) ist dieses Verhalten für Standard-SKUs standardmäßig aktiviert, und das Ablaufverfolgungsflag 845 darf nicht verwendet werden.

Bereich: nur global
876 Verwendet die Zuteilung großer Seiten für Columnstore.

Hinweis: Im Gegensatz zum Ablaufverfolgungsflag 834 wird mit dem Ablaufverfolgungsflag 876 beim Starten der Instanz kein SQLOS-Speicher vorab zugeordnet, und nicht verwendeter Speicher kann freigegeben werden.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: nur global
902 Umgeht die Ausführung des Datenbankupgradeskripts, wenn ein kumulatives Update oder Service Pack installiert wird. Wenn Sie im Skriptupdatemodus ein Fehler auftritt, wird empfohlen, sich an den Microsoft SQL-Kundendienst und -Support zu wenden. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

WARNUNG: Dieses Ablaufverfolgungsflag ist für die Problembehandlung von fehlerhaften Updates im Skriptupdatemodus vorgesehen. Eine kontinuierliche Ausführung in einer Produktionsumgebung wird nicht unterstützt. Datenbankupgradeskripts müssen erfolgreich ausgeführt werden, damit kumulative Updates und Service Packs vollständig installiert werden. Andernfalls können unerwartete Probleme mit der SQL Server-Instanz auftreten.

Bereich: nur global
1117 Wenn sich eine Datei in der Dateigruppe dem Schwellenwert für die automatische Vergrößerung nähert, werden alle Dateien in der Dateigruppe vergrößert. Dieses Ablaufverfolgungsflag wirkt sich auf alle Datenbanken aus und wird nur dann empfohlen, wenn sicher ist, dass alle Dateien in einer Dateigruppe der Datenbank um denselben Betrag vergrößert werden.

Hinweis: Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Optionen AUTOGROW_SINGLE_FILE und AUTOGROW_ALL_FILES von ALTER DATABASE gesteuert, und das Ablaufverfolgungsflag 1117 hat keine Auswirkungen. Weitere Informationen finden Sie unter ALTER DATABASE-Optionen FILE und FILEGROUP (Transact-SQL).

Bereich: nur global
1118 Erzwingt die Seitenzuteilung in einheitliche Erweiterungen anstelle gemischter Erweiterungen, wodurch Konflikte auf der SGAM-Seite reduziert werden. Wenn ein neues Objekt erstellt wird, werden standardmäßig die ersten acht Seiten aus unterschiedlichen Blöcken (gemischte Blöcke) zugeordnet. Wenn später mehr Seiten benötigt werden, werden sie aus demselben Block (einheitlicher Block) zugeordnet. Die SGAM-Seite wird zum Nachverfolgen dieser gemischten Blöcke verwendet, so dass es schnell zu einem Engpass kommen kann, wenn zahlreiche Zuordnungen aus gemischten Blöcken auftreten. Dieses Ablaufverfolgungsflag ordnet beim Erstellen neuer Objekte alle acht Seiten aus demselben Block zu, wodurch die erforderliche Überprüfung der SGAM-Seite minimiert wird. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Option SET MIXED_PAGE_ALLOCATION von ALTER DATABASE gesteuert, und das Ablaufverfolgungsflag 1118 hat keine Auswirkungen. Weitere Informationen zu dieser Einstellung finden Sie unter ALTER DATABASE SET-Optionen (Transact-SQL).

Bereich: nur global
1204 Gibt die an einem Deadlock beteiligten Ressourcen und Sperrentypen sowie den aktuell betroffenen Befehl zurück. Weitere Informationen über Deadlocks finden Sie im Handbuch zu Transaktionssperren und Zeilenversionsverwaltung.

Hinweis: Vermeiden Sie die Verwendung des Ablaufverfolgungsflags 1204 auf Systemen mit hoher Arbeitsauslastung, die Deadlocks verursachen. Weitere Informationen über andere Methoden zum Erkennen von Deadlocks finden Sie im Handbuch zu Transaktionssperren und Zeilenversionsverwaltung.

Bereich: nur global
1211 Deaktiviert die Sperrenausweitung basierend auf nicht ausreichendem Arbeitsspeicher oder auf der Anzahl von Sperren. SQL Server-Datenbank-Engine weitet keine Zeilen- oder Seitensperren zu Tabellensperren aus.

Mithilfe dieses Ablaufverfolgungsflags kann eine übermäßige Anzahl von Sperren generiert werden. Wenn der Sperrenarbeitsspeicher stark genug gewachsen ist, schlagen möglicherweise alle Versuche fehl, zusätzliche Sperren für eine beliebige Abfrage zuzuordnen. Dies kann die Leistung von Datenbank-Engine verlangsamen oder den Fehler 1204 (Sperrenressource kann nicht zugeordnet werden) aufgrund von nicht genügend Arbeitsspeicher verursachen.

Wenn sowohl das Ablaufverfolgungsflag 1211 als auch das Ablaufverfolgungsflag 1224 festgelegt wurde, dann hat 1211 Vorrang gegenüber 1224. Weil jedoch das Ablaufverfolgungsflag 1211 die Ausweitung in jedem Fall (auch bei nicht genügend Arbeitsspeicher) verhindert, wird stattdessen die Verwendung von Ablaufverfolgungsflag 1224 empfohlen. Dies hilft, Fehler aufgrund von nicht genügend Sperren zu vermeiden, wenn viele Sperren verwendet werden.

Weitere Informationen zum Beheben von Blockierungsproblemen, die durch eine Sperrenausweitung in SQL Server ausgelöst werden, finden Sie in diesem Microsoft-Support-Artikel.

Bereich: global oder Sitzung
1222 Gibt die an einem Deadlock beteiligten Ressourcen und Sperrentypen sowie den aktuell betroffenen Befehl in einem XML-Format zurück, das keinem XSD-Schema entspricht. Weitere Informationen über Deadlocks finden Sie im Handbuch zu Transaktionssperren und Zeilenversionsverwaltung.

Hinweis: Vermeiden Sie die Verwendung des Ablaufverfolgungsflags 1222 auf Systemen mit hoher Arbeitsauslastung, die Deadlocks verursachen. Weitere Informationen über andere Methoden zum Erkennen von Deadlocks finden Sie im Handbuch zu Transaktionssperren und Zeilenversionsverwaltung.

Bereich: nur global
1224 Deaktiviert die Sperrenausweitung basierend auf der Anzahl von Sperren. Die Sperrenausweitung kann dennoch durch nicht ausreichenden Arbeitsspeicher aktiviert werden. Datenbank-Engine weitet Zeilen- oder Seitensperren nur dann zu Tabellensperren (oder Partitionssperren) aus, wenn der von Sperrenobjekten belegte Arbeitsspeicher einen der folgenden Grenzwerte überschreitet:
  • Vierzig Prozent des Arbeitsspeichers, der von Datenbank-Engine verwendet wird. Dies gilt nur, wenn der locks-Parameter von sp_configure auf 0 (null) festgelegt ist.
  • 40 % des Sperrspeichers, der mithilfe des locks-Parameters von sp_configure konfiguriert wurde. Weitere Informationen finden Sie unter Serverkonfigurationsoptionen (SQL Server)angezeigt oder konfiguriert wird.

Wenn sowohl das Ablaufverfolgungsflag 1211 als auch das Ablaufverfolgungsflag 1224 festgelegt wurde, dann hat 1211 Vorrang gegenüber 1224. Weil jedoch das Ablaufverfolgungsflag 1211 die Ausweitung in jedem Fall verhindert, auch bei nicht genügend Arbeitsspeicher, wird die Verwendung von 1224 empfohlen. Dies hilft, Fehler aufgrund von nicht genügend Sperren zu vermeiden, wenn viele Sperren verwendet werden.

Hinweis: Die Sperrenausweitung auf die Tabellen- oder HoBT-Ebene kann auch mithilfe der Option LOCK_ESCALATION der ALTER TABLE-Anweisung gesteuert werden.

Weitere Informationen zum Beheben von Blockierungsproblemen, die durch eine Sperrenausweitung in SQL Server ausgelöst werden, finden Sie in diesem Microsoft-Support-Artikel.

Bereich: global oder Sitzung
1229 Deaktiviert alle Sperrenpartitionierungen, unabhängig von der Anzahl der CPUs. Standardmäßig aktiviert SQL Server die Sperrenpartitionierung für Server mit 16 oder mehr CPUs, um die Skalierbarkeitsmerkmale größerer Systeme zu verbessern. Weitere Informationen zur Sperrenpartitionierung finden Sie im Handbuch zu Transaktionssperren und der Zeilenversionsverwaltung.

WARNUNG: Das Ablaufverfolgungsflag 1229 kann einen Spinlock-Konflikt und schlechte Leistung verursachen.

Bereich: nur global
1236 Aktiviert die Datenbanksperrpartitionierung. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2012 (11.x) SP3 und SQL Server 2014 (12.x) SP1 wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 1236 hat keine Auswirkungen.

Bereich: nur global
1237 Hiermit berücksichtigt die ALTER PARTITION FUNCTION-Anweisung die Deadlockpriorität der aktuellen benutzerdefinierten Sitzung, statt standardmäßig wahrscheinlich selbst das Deadlockopfer zu sein. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2017 (14.x) und dem Datenbank-Kompatibilitätsgrad 140 ist dies das Standardverhalten, und das Ablaufverfolgungsflag 1237 hat keine Auswirkungen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
1260 Deaktiviert Speicherabbilder der Zeitplanungsmodul-Überwachung.

Bereich: nur global
1448 Aktiviert den Replikationsprotokolleser, sodass er weitergehen kann, auch wenn die asynchronen sekundären Elemente den Empfang einer Änderung nicht bestätigt haben. Auch wenn dieses Ablaufverfolgungsflag aktiviert ist, wartet der Protokollleser immer auf den synchronen sekundären Elemente. Der Protokollleser geht nicht über "min ack" für die synchronen sekundären Elemente hinaus. Dieses Ablaufverfolgungsflag gilt für die Instanz von SQL Server, nicht nur eine Verfügbarkeitsgruppe, eine Verfügbarkeitsdatenbank oder eine Protokollleserinstanz. Wird sofort ohne Neustart wirksam. Dieses Ablaufverfolgungsflag im Voraus oder beim Fehlschlagen eines sekundären Elements aktiviert werden. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
1462 Deaktiviert die Protokolldatenstrom-Komprimierung für asynchrone Verfügbarkeitsgruppen. Dieses Feature ist für asynchrone Verfügbarkeitsgruppen standardmäßig aktiviert, um die Netzwerkbandbreite zu optimieren. Weitere Informationen finden Sie unter Optimieren der Komprimierung für die Verfügbarkeitsgruppe.

Bereich: nur global
1800 Aktiviert die SQL Server-Optimierung, wenn in SQL Server-Always On- und -Protokollversandumgebungen Datenträger mit einer anderen Sektorgröße für die Protokolldateien der primären und sekundären Replikate verwendet werden. Dieses Ablaufverfolgungsflag muss nur auf SQL Server-Instanzen mit Transaktionsprotokolldateien aktiviert werden, die sich auf einem Datenträger mit einer Sektorgröße von 512 Byte befinden. Auf Datenträgern mit einer Sektorgröße von 4 KB muss es nicht aktiviert sein. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2012 (11.x) SP1 CU13, SQL Server 2012 (11.x) SP2 CU3, SQL Server 2014 (12.x) RTM CU5 und höheren Builds verfügbar.

Bereich: nur global
1802 Deaktiviert die ACL-Änderung und die Zugriffsüberprüfung mit Identitätswechsel während Anfügen oder Trennen von Datenbanken. Dies kann hilfreich sein, wenn beim Anfügen einer Datenbank Zugriffsberechtigungsfehler wie z. B. Fehler 5120 auftreten.

Bereich: nur global
1819 Ermöglicht Sicherung in URL, um beim Zugriff auf Azure-Blockblobs einen Proxyserver zu nutzen. Zusätzlich zu diesem Ablaufverfolgungsflag müssen Sie die WinHTTP-Proxykonfiguration auf dem Server mit einer der folgenden Methoden festlegen:

– Dem proxycfg.exe-Hilfsprogramm unter Windows XP oder Windows Server 2003 und früher.
– Dem netsh.exe-Hilfsprogramm unter Windows Vista und Windows Server 2008 oder höher.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2301 Dieses Ablaufverfolgungsflag aktiviert die Optimierungen der erweiterten Entscheidungsunterstützung, die spezifisch für Abfragen der Entscheidungsunterstützung gelten. Diese Option gilt für die Verarbeitung von großen Datasets durch die Entscheidungsunterstützung.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2312 Legt abhängig vom Kompatibilitätsgrad der Datenbank das Kardinalitätsschätzungsmodell (Cardinality Estimation, CE) für den Abfrageoptimierer auf Version SQL Server 2014 (12.x) und höher fest

Hinweis: Wenn der Datenbank-Kompatibilitätsgrad niedriger als 120 ist, wird beim Aktivieren des Ablaufverfolgungsflags 2312 das Kardinalitätsschätzungsmodell von SQL Server 2014 (12.x) (120) verwendet. Weitere Informationen finden Sie im folgenden Microsoft-Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'FORCE_DEFAULT_CARDINALITY_ESTIMATION' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2335 Führt dazu, dass SQL Server annimmt, dass während der Abfrageoptimierung eine festgelegte Arbeitsspeichermenge verfügbar ist. Dies gilt für ein Szenario, bei dem für die Serverkonfigurationsoption Max. Serverarbeitsspeicher ein zu hoher Wert festgelegt wurde. Außerdem generiert SQL Server dadurch einen nicht effizienten Plan für eine bestimmte Abfrage. Der Arbeitsspeicher, den SQL Server zur Ausführung der Abfrage zuweist, wird nicht begrenzt. Der für SQL Server konfigurierte Arbeitsspeicher wird weiterhin vom Datencache, der Abfageausführung und anderen Consumern verwendet.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2340 Bewirkt, dass SQL Server keine Sortiervorgänge (Batch-Sortierung) für optimierte Joins geschachtelter Schleifen verwendet, wenn ein Plan generiert wird. Standardmäßig kann SQL Server anstelle eines vollständigen Scans oder eines Joins geschachtelter Schleifen mit einer expliziten Sortierung auch einen optimierten Join geschachtelter Schleifen verwenden, wenn der Abfrageoptimierer zu dem Ergebnis kommt, dass zwar keine Sortierung erforderlich ist, aber dennoch eine Möglichkeit darstellt, wenn die Kardinalität oder die Kostenschätzung falsch ist. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'DISABLE_OPTIMIZED_NESTED_LOOP' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2371 Ändert den festen Schwellenwert für Statistikaktualisierungen in einen linearen Schwellenwert für Statistikaktualisierungen. Weitere Informationen finden Sie unter AUTO_UPDATE_STATISTICS-Option.

Hinweis: Ab SQL Server 2016 (13.x) und dem Datenbank-Kompatibilitätsgrad 130 (oder höher) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 2371 hat keine Auswirkungen.

Bereich: nur global
2389 Aktiviert automatisch generierte schnelle Statistiken für aufsteigende Schlüssel (Histogramm-Verbesserung). Wenn das Ablaufverfolgungsflag 2389 festgelegt ist und eine führende Statistikspalte als aufsteigend gekennzeichnet ist, wird das Histogramm, mit dem die Kardinalität geschätzt wird, zum Zeitpunkt der Abfragekompilierung angepasst.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nicht für CE-Version 120 oder höher. Verwenden Sie stattdessen das Ablaufverfolgungsflag 4139.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2390 Aktiviert automatisch generierte schnelle Statistiken für aufsteigende oder unbekannte Schlüssel (Histogramm-Verbesserung). Wenn das Ablaufverfolgungsflag 2390 festgelegt ist und eine führende Statistikspalte als aufsteigend oder unbekannt gekennzeichnet ist, wird das Histogramm, mit dem die Kardinalität geschätzt wird, zum Zeitpunkt der Abfragekompilierung angepasst. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nicht für CE-Version 120 oder höher. Verwenden Sie stattdessen das Ablaufverfolgungsflag 4139.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2422 Damit kann das SQL Server-Datenbank-Engine eine Anforderung abbrechen, wenn die maximale Zeit überschritten wird, die Resource Governor für die REQUEST_MAX_CPU_TIME_SEC-Konfiguration festgelegt hat. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU3 und höheren Builds verfügbar.

Bereich: nur global
2430 Aktiviert ein Cleanup der alternativen Sperrklasse. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
2451 Aktiviert das Äquivalent des letzten tatsächlichen Ausführungsplans in sys.dm_exec_query_plan_stats.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Hinweis: Informationen dazu, wie Sie dies ab SQL Server 2019 (15.x) auf Datenbankebene erreichen, finden Sie unter LAST_QUERY_PLAN_STATS im Artikel ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Bereich: nur global
2453 Damit kann eine Tabellenvariable ein erneutes Kompilieren auslösen, wenn ausreichend viele Zeilen geändert werden. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2467 Aktiviert eine Richtlinie für die Zuordnung eines alternativen parallelen Arbeitsthreads basierend darauf, welchem Knoten die wenigsten Threads zugeordnet sind. Weitere Informationen finden Sie unter Parallele Abfrageverarbeitung. Informationen zum Konfigurieren der Serveroption für die maximale Anzahl von Arbeitsthreads finden Sie unter Konfigurieren der Serverkonfigurationsoption „Max. Anzahl von Arbeitsthreads“.

Hinweis: Der Parallelitätsgrad einer Abfrage muss auf einen einzelnen Knoten ausgerichtet sein, damit diese alternative Richtlinie verwendet werden kann. Andernfalls wird die Standardrichtlinie für die Threadzuordnung verwendet. Bei Verwendung dieses Ablaufverfolgungsflags wird nicht empfohlen, zum Ausführen von Abfragen einen Parallelitätsgrad anzugeben, der über der Anzahl von Zeitplanern in einem einzelnen Knoten liegt. Dies könnte nämlich Abfragen beeinträchtigen, die einen Parallelitätsgrad angeben, der der Anzahl von Zeitplanern in einem einzelnen Knoten entspricht oder darunter liegt.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: nur global
2469 Ermöglicht einen alternativen Austausch für INSERT INTO ... SELECT in einen partitionierten Columnstore-Index. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
2528 Hiermit wird die parallele Überprüfung von Objekten durch DBCC CHECKDB, DBCC CHECKFILEGROUP und DBCC CHECKTABLE deaktiviert. Standardmäßig wird der Grad der Parallelität automatisch durch den Abfrageprozessor bestimmt. Der Höchstgrad von Parallelität wird genauso konfiguriert wie der von parallelen Abfragen. Weitere Informationen finden Sie unter Konfigurieren der Serverkonfigurationsoption Max. Grad an Parallelität.

Hinweis: Parallele DBCC-Überprüfungen sind in der Regel aktiviert (Standard). Der Abfrageprozessor wertet die Parallelität bei jeder durch DBCC CHECKDB überprüften Tabelle oder jedem überprüften Tabellenbatch erneut aus und passt sie automatisch an.

Typisches Verwendungsszenario: Ein Systemadministrator weiß, dass die Serverlast sich erhöht, bis DBCC CHECKDB abgeschlossen ist. Daher entscheidet er, die Parallelität manuell zu verringern oder zu deaktivieren, um die Parallelität mit anderen Benutzerworkloads zu erhöhen. Allerdings kann das Deaktivieren von parallelen Überprüfungen in DBCC CHECKDB dazu führen, dass es länger dauert, bis sie abgeschlossen werden.

Hinweis: Wenn DBCC CHECKDB mit der Option TABLOCK ausgeführt wird und die Parallelität deaktiviert ist, können Tabellen für längere Zeit gesperrt werden.

Hinweis: Ab SQL Server 2014 (12.x) SP2 ist eine „MAXDOP“-Option verfügbar, um den maximalen Grad von Parallelitätskonfigurationsoptionen von „sp_configure“ für die DBCC-Anweisungen zu überschreiben.

Bereich: global oder Sitzung
2544 Bewirkt, dass ein Speicherabbild von SQL Server zu einem vollständigen Speicherabbild wird (Standardeinstellung ist ein Miniabbild). Vollständige Speicherabbilder sind eine vollständige Kopie des aktiven Zielprozessspeichers. Dazu gehören der gesamte Threadzustand, der gesamte durch Prozesse belegte Arbeitsspeicher und alle geladenen Module. Die Größe von vollständigen Speicherabbildern entspricht daher in etwa der Arbeitsspeichermenge, die vom SQL Server-Prozess verwendet wird. Diese kann wiederum fast so groß wie der gesamte System-RAM sein. Auf großen Servern mit einer einzelnen SQL Server-Instanz kann das Speicherabbild aus einer Datei bestehen, die Hunderte Gigabyte oder mehr umfasst.

WARNUNG: Das Erzeugen eines vollständigen Speicherabbilds kann den SQL Server-Prozess für einen längeren Zeitraum (mehrere Sekunden bis Minuten) zum Stoppen bringen und zu einer sehr großen Speicherabbilddatei führen. Verwenden Sie dieses Flag mit Vorsicht und nur dann, wenn die Situation es erfordert.

Ausführlichere Informationen finden Sie unter Erzeugen einer Speicherabbilddatei in SQL Server mithilfe des Hilfsprogramms Sqldumper.exe.

Bereich: nur global
2549 Erzwingt, dass der DBCC CHECKDB-Befehl annimmt, dass sich jede Datenbankdatei auf einem eindeutigen Laufwerk befindet, aber verschiedene physische Dateien als eine logische Datei behandelt. Mit dem Befehl DBCC CHECKDB wird eine interne Liste der zu lesenden Seiten pro eindeutigem Laufwerk in allen Datenbankdateien erstellt. Diese Logik ermittelt eindeutige Laufwerke auf Grundlage des Laufwerkbuchstabens des physischen Dateinamens der einzelnen Dateien.

Hinweis: Verwenden Sie dieses Ablaufverfolgungsflag auf keinen Fall, es sei denn, Sie wissen, dass sich jede Datei auf einem eindeutigen physischen Laufwerk befindet.

Hinweis: Obwohl dieses Ablaufverfolgungsflag die Leistung der DBCC CHECKDB-Befehle verbessert, in denen die Option PHYSICAL_ONLY verwendet wird, bemerken einige Benutzer möglicherweise keine Leistungsverbesserungen. Während dieses Ablaufverfolgungsflag die E/A-Ressourcenverwendung des Datenträgers verbessert, schränkt die zugrunde liegende Leistung der Datenträgerressourcen ggf. die allgemeine Leistung des Befehls DBCC CHECKDB ein. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
2551 Bewirkt, dass ein Speicherabbild von SQL Server zu einem gefilterten Speicherabbild wird (Standardeinstellung ist ein Miniabbild). In diesem Abbild wird der vollständige Arbeitsspeicher erfasst. Dabei werden große Bereiche von Arbeitsspeicherstrukturen, die zu SQL Server gehören, absichtlich herausgefiltert und nicht auf den Datenträger serialisiert, da sie keinen Mehrwert für die Problembehandlung bieten (in der Regel Daten-/Indexseiten, einige interne Caches wie Hekaton-Datenseiten und Protokollpoolspeicher). Dies führt zu einer Datei, die zwar kleiner als ein vollständiges Speicherabbild ist, in den meisten Situationen jedoch, in denen Minidumps nicht ausreichen, als bevorzugte Option fast genauso nützlich ist. . Ausführlichere Informationen finden Sie unter Erzeugen einer Speicherabbilddatei in SQL Server mithilfe des Hilfsprogramms Sqldumper.exe.

Bereich: nur global
2562 Führt den Befehl DBCC CHECKDB in einem einzelnen „Batch“ aus, unabhängig von der Anzahl der Indizes in der Datenbank. Standardmäßig versucht der DBCC CHECKDB-Befehl, „TempDB“-Ressourcen durch Beschränken der Anzahl von Indizes oder „Fakten“ zu reduzieren, die er mithilfe eines „Batch“-Konzepts generiert. Dieses Ablaufverfolgungsflag erzwingt jedoch, dass die gesamte Verarbeitung in einem Batch passiert.

Eine Auswirkung der Verwendung dieses Ablaufverfolgungsflags ist, dass sich die Speicherplatzanforderungen von „TempDB“ erhöhen können. „TempDB“ kann um fünf Prozent oder mehr der Benutzerdatenbank wachsen, die vom DBCC CHECKDB-Befehl verarbeitet wird.

Hinweis: Obwohl dieses Ablaufverfolgungsflag die Leistung der DBCC CHECKDB-Befehle verbessert, in denen die Option PHYSICAL_ONLY verwendet wird, bemerken einige Benutzer möglicherweise keine Leistungsverbesserungen. Während dieses Ablaufverfolgungsflag die E/A-Ressourcenverwendung des Datenträgers verbessert, schränkt die zugrunde liegende Leistung der Datenträgerressourcen ggf. die allgemeine Leistung des Befehls DBCC CHECKDB ein. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
2566 Führt den DBCC CHECKDB-Befehl ohne Datenreinheitsüberprüfung aus, es sei denn, die DATA_PURITY-Option wird angegeben.

Hinweis: Die Überprüfung der Spaltenwertintegrität ist standardmäßig aktiviert. Die Option DATA_PURITY ist nicht erforderlich. Bei Datenbanken, für die ein Upgrade aus früheren Versionen von SQL Server ausgeführt wurde, ist die Spaltenwertprüfung nicht standardmäßig aktiviert. Die Aktivierung erfolgt erst, wenn DBCC CHECKDB WITH DATA_PURITY mindestens ein Mal fehlerfrei für die Datenbank ausgeführt wurde. Danach wird die Spaltenwertintegrität standardmäßig von DBCC CHECKDB überprüft. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
2592 Aktiviert die Symbolauflösung für Stapelabbilder, wenn die Tools zum Debuggen unter Windows installiert sind. Zum Beispiel erfordert die Verwendung von Ablaufverfolgungsflag 3656, dass das Ablaufverfolgungsflag 2592 aktiviert ist.

WARNUNG: Dies ist ein Ablaufverfolgungsflag zum Debuggen, das sich nicht für die Verwendung in einer Produktionsumgebung eignet.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Bereich: global und Sitzung
3023 Aktiviert die Option CHECKSUM als Standard für den BACKUP-Befehl. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2014 (12.x) wird dieses Verhalten durch Festlegen der Konfigurationsoption backup checksum default gesteuert. Weitere Informationen finden Sie unter Serverkonfigurationsoptionen (SQL Server)angezeigt oder konfiguriert wird.

Bereich: global und Sitzung
3042 Umgebt den standardmäßigen Vorabzuordnungsalgorithmus für die Sicherungskomprimierung, damit die Sicherungsdatei nur dem Bedarf entsprechend anwächst, bis sie ihre endgültige Größe erreicht. Dieses Ablaufverfolgungsflag ist nützlich, wenn Sie Speicherplatz einsparen müssen, indem Sie nur die tatsächliche für die komprimierte Sicherung benötigte Größe zuordnen. Dieses Ablaufverfolgungsflag kann eine leichte Leistungseinbuße (eine mögliche Verlängerung des Sicherungsvorgangs) verursachen. Weitere Informationen zum Vorabzuordnungsalgorithmus finden Sie unter Sicherungskomprimierung (SQL Server).

Bereich: nur global
3051 Aktiviert die Protokollierung der SQL Server-URL-Sicherung in einer bestimmten Fehlerprotokolldatei. Weitere Informationen finden Sie unter SQL Server-URL-Sicherung – bewährte Methoden und Problembehandlung.

Bereich: nur global
3205 Wenn ein Bandlaufwerk die Hardwarekomprimierung unterstützt, wird dies standardmäßig von der DUMP- oder der BACKUP-Anweisung verwendet. Mit diesem Ablaufverfolgungsflag kann die Hardwarekomprimierung für Treiber des Bandlaufwerkes deaktiviert werden. Diese Deaktivierung ist hilfreich, wenn Sie Datenbänder mit anderen Standorten oder mit Bandlaufwerken austauschen möchten, die keine Datenkomprimierung unterstützen.

Bereich: global oder Sitzung
3226 Standardmäßig wird bei jedem erfolgreichen Sicherungsvorgang dem SQL Server -Fehlerprotokoll und dem Systemereignisprotokoll ein Eintrag hinzugefügt. Wenn Sie regelmäßige Protokollsicherungen erstellen, kann die Anzahl dieser Erfolgsmeldungen schnell ansteigen, d.h. es entstehen sehr große Fehlerprotokolle, die das Suchen nach anderen Meldungen erschweren können.

Mit diesem Ablaufverfolgungsflag können Sie diese Protokolleinträge unterdrücken. Dies ist hilfreich, wenn Sie regelmäßig Protokollsicherungen ausführen und keines der Skripts von diesen Einträgen abhängig ist.

Bereich: nur global
3427 Aktiviert eine Fehlerbehebung für ein Problem, das auftritt, wenn viele aufeinander folgende Transaktionen Daten in temporäre Tabellen in SQL Server 2016 (13.x) einfügen und dieser Vorgang mehr CPU-Leistung beansprucht als in SQL Server 2014 (12.x). Weitere Informationen finden Sie in diesem Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag gilt für SQL Server 2016 (13.x) SP1 CU2 bis SQL Server 2016 (13.x) SP2 CU2. Ab SQL Server 2016 (13.x) SP2 CU3 und SQL Server 2017 (14.x) hat dieses Ablaufverfolgungsflag keine Auswirkungen.

Bereich: nur global
3459 Deaktiviert die parallele Wiederholung. Weitere Informationen finden Sie in diesem und diesem Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x), SQL Server 2017 (14.x) und höheren Builds verfügbar.

Bereich: nur global
3468 Deaktiviert die indirekten Prüfpunkte auf TempDB.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP1 CU5, SQL Server 2017 (14.x) CU1 und höheren Builds verfügbar.

Bereich: nur global
3605 Leitet Ablaufverfolgungsnachrichten an das SQL Server-Fehlerprotokoll um. Die Verwendung der Ablaufverfolgungsflags 205 und 8721 erfordert beispielsweise, dass das Ablaufverfolgungsflag 3605 aktiviert ist.

WARNUNG: Dies ist ein Ablaufverfolgungsflag zum Debuggen, das in einer Produktionsumgebung nicht kontinuierlich aktiviert werden sollte.

Bereich: global oder Sitzung
3608 Verhindert, dass SQL Server automatisch gestartet wird und andere Datenbanken als die Masterdatenbank wiederherstellt. Wenn Aktivitäten, die TempDB erfordern, initiiert werden, wird model wiederhergestellt und TempDB erstellt. Andere Datenbanken werden gestartet und wiederhergestellt, wenn darauf zugegriffen wird. Einige Funktionen, z. B. Momentaufnahmeisolation und Read Committed-Momentaufnahme, funktionieren möglicherweise nicht. Nutzen Sie es zum Verschieben von Systemdatenbanken und Verschieben von Benutzerdatenbanken.

Hinweis: Nicht im Normalbetrieb verwenden.

Bereich: nur global
3625 Beschränkt die Menge von Informationen, die an Benutzer zurückgegeben wird, die keine Mitglieder der festen Serverrolle „sysadmin“ sind, indem die Parameter einiger Fehlermeldungen mit „******“ maskiert werden. Dadurch kann verhindert werden, dass vertrauliche Informationen offen gelegt werden.

Bereich: nur global
3656 Aktiviert die Symbolauflösung für Stapelabbilder, wenn die Tools zum Debuggen unter Windows installiert sind.

WARNUNG: Dies ist ein Ablaufverfolgungsflag zum Debuggen, das sich nicht für die Verwendung in einer Produktionsumgebung eignet.

Hinweis: Von SQL Server 2019 (15.x) an muss das Ablaufverfolgungsflag 2592 in Verbindung mit dem Ablaufverfolgungsflag 3656 aktiviert sein, um die Symbolauflösung zu aktivieren.

Bereich: global und Sitzung
3924 Dieses Flag aktiviert die automatische Entfernung verwaister DTC-Transaktionen mit SPID=-2. Dies kann bei einigen Transaktionsüberwachungsprogrammen von Drittanbietern zu Problemen führen. Weitere Informationen finden Sie in diesem und diesem Microsoft Support-Artikel.

Bereich: nur global
4022 Deaktiviert die automatische Ausführung von gespeicherten Prozeduren beim Start von SQL Server. Weitere Informationen zur automatischen Ausführung von gespeicherten Prozeduren, die für den Start vorgesehen sind, finden Sie unter sp_procoption.

Bereich: nur global
4136 Dieses Ablaufverfolgungsflag deaktiviert die Parameterermittlung, es sei denn, OPTION(RECOMPILE), WITH RECOMPILE oder OPTIMIZE FOR <value> wird verwendet. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Damit Sie dies ab SQL Server 2016 (13.x) auf der Datenbankebene erreichen, lesen Sie die Informationen zur Option PARAMETER_SNIFFING unter ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Fügen Sie den Abfragehinweis „OPTIMIZE FOR UNKNOWN“ hinzu, um dies auf Abfrageebene zu erreichen. Der Hinweis „OPTIMIZE FOR UNKNOWN“ deaktiviert den Parameterermittlungsmechanismus nicht, sondern umgeht diesen effektiv, um das gleiche beabsichtigte Ergebnis zu erzielen.
Ab SQL Server 2016 (13.x) SP1 besteht eine zweite Möglichkeit zum Erreichen dieses Ziels auf Abfrageebene darin, den Abfragehinweis USE HINT 'DISABLE_PARAMETER_SNIFFING' hinzuzufügen, anstatt dieses Ablaufverfolgungsflag zu verwenden.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung
4137 Bewirkt, dass SQL Server einen Plan mithilfe minimaler Selektivität generiert, wenn „AND“-Prädikate für Filter geschätzt werden, um anstelle der Unabhängigkeit der partiellen Korrelation unter dem Kardinalitätsschätzungsmodell für den Abfrageoptimierer von SQL Server 2012 (11.x) und früheren Versionen (70) Rechnung zu tragen. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie bei Verwendung von CE 70 den Abfragehinweis USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nicht für CE-Version 120 oder höher. Verwenden Sie stattdessen das Ablaufverfolgungsflag 9471.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
4138 Bewirkt, dass SQL Server einen Plan generiert, der keine Zeile-Ziel-Korrekturen mit Abfragen verwendet, die die Schlüsselwörter TOP, OPTION (FAST N), IN oder EXISTS enthalten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'DISABLE_OPTIMIZER_ROWGOAL' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
4139 Aktiviert automatisch generierte schnelle Statistiken (Histogramm-Verbesserung), unabhängig vom Status der Schlüsselspalte. Wenn das Ablaufverfolgungsflag 4139 festgelegt ist, unabhängig vom Status der führenden Statistikspalte (aufsteigend, absteigend oder stationär), wird das Histogramm, mit dem die Kardinalität geschätzt wird, zum Zeitpunkt der Abfragekompilierung angepasst. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nicht für Version 70 der Kardinalitätsschätzung oder höher. Verwenden Sie stattdessen die Ablaufverfolgungsflags 2389 und 2390.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
4199 Aktiviert Fehlerbehebungen für den Abfrageoptimierer (Query Optimizer, QO), die in kumulativen Updates und Service Packs in SQL Server veröffentlicht wurden.

QO-Änderungen an früheren Releases von SQL Server sind standardmäßig im aktuellen Datenbank-Kompatibilitätsgrad eines bestimmten Produktrelease aktiviert, ohne dass das Ablaufverfolgungsflag 4199 aktiviert wird.

In der folgenden Tabelle wird das Verhalten bei Verwendung von Datenbankkompatibilitätsgraden und dem Ablaufverfolgungsflag 4199 zusammengefasst. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Version der Datenbank-EngineDatenbank-KompatibilitätsgradTF 4199Abfrageoptimierer-Änderungen aus früheren Datenbank-KompatibilitätsgradenAbfrageoptimierer-Änderungen für Versionen der Datenbank-Engine nach RTM
13 (SQL Server 2016 (13.x))100 bis 120AusDisabledDisabled
AndererseitsAktiviertAktiviert
130 (Standard)AusAktiviertDisabled
AndererseitsAktiviertAktiviert
14 (SQL Server 2017 (14.x))100 bis 120AusDisabledDisabled
AndererseitsAktiviertAktiviert
130AusAktiviertDisabled
AndererseitsAktiviertAktiviert
140 (Standard)AusAktiviertDisabled
AndererseitsAktiviertAktiviert
15 (SQL Server 2019 (15.x)) und 12 (Azure SQL-Datenbank)100 bis 120AusDisabledDisabled
AndererseitsAktiviertAktiviert
130 bis 140AusAktiviertDisabled
AndererseitsAktiviertAktiviert
150 (Standard)AusAktiviertDisabled
AndererseitsAktiviertAktiviert


Um dies ab SQL Server 2016 (13.x) auf der Datenbankebene zu erreichen, lesen Sie die Informationen zur Option QUERY_OPTIMIZER_HOTFIXES unter ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'ENABLE_QUERY_OPTIMIZER_HOTFIXES' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Wichtig: Fixes für den Abfrageoptimierer, die falsche Ergebnisse oder Fehler durch Zugriffsverletzungen beheben, werden nicht durch das Ablaufverfolgungsflag 4199 aktiviert. Diese Fixes sind nicht optional und werden nach der Installation des Updatepakets standardmäßig aktiviert.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
4610 Erhöht die Größe der Hashtabelle, die die Cacheeinträge mit einem Faktor von 8 speichert. Bei Verwendung zusammen mit dem Ablaufverfolgungsflag 4618 erhöht sich die Anzahl von Einträgen im Cachespeicher „TokenAndPermUserStore“ auf 8.192. Weitere Informationen finden Sie in diesem Microsoft-Support-Artikel und in diesem Microsoft-Support-Artikel.

Bereich: nur global
4616 Macht Metadaten auf Serverebene für Anwendungsrollen sichtbar. In SQL Server kann von einer Anwendungsrolle nicht auf Metadaten außerhalb ihrer eigenen Datenbank zugegriffen werden, da Anwendungsrollen keinem Prinzipal auf Serverebene zugeordnet sind. Dieses Verhalten unterscheidet sich von früheren Versionen von SQL Server. Durch Festlegen dieses globalen Flags werden die neuen Einschränkungen deaktiviert, und der Zugriff von Anwendungsrollen auf Metadaten auf Serverebene wird zugelassen.

Bereich: nur global
4618 Grenzt die Anzahl der Einträge im Cachespeicher „TokenAndPermUserStore“ auf 1.024 ein. Bei Verwendung zusammen mit dem Ablaufverfolgungsflag 4610 erhöht sich die Anzahl von Einträgen im Cachespeicher „TokenAndPermUserStore“ auf 8.192. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
4621 Beschränkt die Anzahl von Einträgen im „TokenAndPermUserStore“-Cachespeicher auf die vom Benutzer in einem Registrierungsschlüssel angegebene Anzahl. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
5004 Pausiert den TDE-Verschlüsselungsscan und bewirkt, dass der Verschlüsselungsscan-Worker beendet wird, ohne eine Aufgabe auszuführen. Die Datenbank ist weiterhin im Verschlüsselungsstatus (Verschlüsselung in Bearbeitung). Um einen erneuten Verschlüsselungsscan fortzusetzen, deaktivieren Sie das Ablaufverfolgungsflag 5004, und führen Sie ALTER DATABASE SET ENCRYPTION ON aus.

Bereich: nur global
6408 Hiermit wird die Sichtbarkeit des geschätzten Ausführungsplans aktiviert, um den Remoteabfrageplan des PolyBase-Pushdownberechnungsergebnisses anzuzeigen. Hinweis: Ab SQL Server 2019 (15.x). Weitere Informationen finden Sie unter Identifizieren eines externen Pushdowns.
6498 Aktiviert die Kompilierung von mehr als einer großen Abfrage, um Zugriff auf das große Gateway zu erhalten, wenn ausreichend Arbeitsspeicher verfügbar ist. Dieses Ablaufverfolgungsflag kann verwendet werden, um die Speicherauslastung für die Kompilierung von eingehenden Abfragen unter Kontrolle zu halten, wodurch Kompilierungswartevorgänge für gleichzeitige umfangreiche Abfragen vermieden werden. Es basiert auf den 80 Prozent von SQL Server-Zielarbeitsspeicher und ermöglicht pro 25 Gigabyte (GB) RAM die Kompilierung einer großen Abfrage. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2014 (12.x) SP2 und SQL Server 2016 (13.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 6498 hat keine Auswirkungen.

Bereich: nur global
6527 Deaktiviert die Erstellung eines Speicherdumps beim ersten Auftreten einer Ausnahme wegen unzureichenden Arbeitsspeichers in der CLR-Integration. Standardmäßig generiert SQL Server ein kleines Speicherabbild beim ersten Auftreten einer Ausnahme wegen unzureichenden Arbeitsspeichers in der CLR. Das Ablaufverfolgungsflag verhält sich wie folgt:
  • Wenn dies als Startablaufverfolgungsflag verwendet wird, wird nie ein Speicherdump generiert. Jedoch wird unter Umständen ein Speicherdump generiert, wenn andere Ablaufverfolgungsflags verwendet werden.
  • Wenn dieses Ablaufverfolgungsflag auf einem laufenden Server aktiviert wird, wird ab diesem Punkt nicht automatisch ein Speicherdump generiert. Wenn jedoch aufgrund einer Ausnahme wegen unzureichenden Arbeitsspeichers in der CLR bereits ein Speicherdump generiert wurde, hat dieses Ablaufverfolgungsflag keine Auswirkungen.

Bereich: nur global
6532 Aktiviert Leistungsverbesserungen von Abfragevorgängen mit räumlichen Datentypen in SQL Server 2012 (11.x) und SQL Server 2014 (12.x). Der Leistungsgewinn variiert je nach Konfiguration, Abfragetypen und Objekten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 6532 hat keine Auswirkungen.

Bereich: global und Sitzung
6533 Aktiviert Leistungsverbesserungen von Abfragevorgängen mit räumlichen Datentypen in SQL Server 2012 (11.x) und SQL Server 2014 (12.x). Der Leistungsgewinn variiert je nach Konfiguration, Abfragetypen und Objekten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 6533 hat keine Auswirkungen.

Bereich: global und Sitzung
6534 Aktiviert die Leistungsverbesserung von Abfragevorgängen mit räumlichen Datentypen, die mit SQL Server 2012 (11.x) beginnen. Der Leistungsgewinn variiert je nach Konfiguration, Abfragetypen und Objekten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
6545 Dieses Flag aktiviert die Serverkonfigurationsoption „CLR Strict Security“. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Flag ist in SQL Server 2012 (11.x) SP3 CU10, SQL Server 2014 (12.x) SP2 CU6, SQL Server 2016 (13.x) RTM CU7, SQL Server 2016 (13.x) SP1 CU4 und höheren Builds verfügbar. Dieses Feature ist ab SQL Server 2017 (14.x) standardmäßig aktiviert, und das Ablaufverfolgungsflag 6545 hat keine Auswirkungen.

Bereich: nur global
7314 Erzwingt, dass die NUMBER-Werte mit unbekannter Genauigkeit/Skalierung als double-Werte mit OLE DB-Anbieter behandelt werden sollen. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: global und Sitzung
7412 Aktiviert die einfache Profilerstellungsinfrastruktur für die Abfrageausführungsstatistik. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP1 und höheren Builds verfügbar. Ab SQL Server 2019 (15.x) hat dieses Ablaufverfolgungsflag keine Auswirkungen mehr, weil die Lightweight-Profilerstellung standardmäßig aktiviert ist.

Bereich: nur global
7470 Dieses Flag aktiviert zusätzliche Berechnungen für Speicherzuweisungen, die für Sortiervorgänge erforderlich sind. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Flag ist in SQL Server 2012 (11.x) SP2 CU8, SQL Server 2014 (12.x) RTM CU10, SQL Server 2014 (12.x) SP1 CU3und höheren Builds verfügbar.

WARNUNG: Durch das Ablaufverfolgungsflag 7470 werden die Arbeitsspeicheranforderungen von Abfragen mit Sortieroperatoren erhöht, was sich auf die Speicherverfügbarkeit für andere Abfragen auswirken kann, die zur gleichen Zeit ausgeführt werden.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
7471 Aktiviert das Ausführen mehrerer UPDATE STATISTICS für verschiedene Statistiken gleichzeitig in einer einzelnen Tabelle. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2014 (12.x) SP1 und höheren Builds verfügbar.

Bereich: nur global
7745 Erzwingt, dass der Abfragespeicher beim Herunterfahren der Datenbank keine Daten an den Datenträger ausgibt.

Hinweis: Wenn Sie dieses Ablaufverfolgungsflag verwenden, gehen Abfragespeicherdaten, die noch nicht an den Datenträger ausgegeben wurden, beim Herunterfahren ggf. verloren. Um SQL Server herunterzufahren, kann der Befehl SHUTDOWN WITH NOWAIT anstelle dieses Ablaufverfolgungsflags verwendet werden, um ein sofortiges Herunterfahren zu erzwingen.

Bereich: nur global
7752 Aktiviert das asynchrone Laden des Abfragespeichers.

Hinweis: Nutzen Sie dieses Ablaufverfolgungsflag, wenn in SQL Server eine große Anzahl von QDS_LOADDB-Wartevorgängen auftreten, die mit dem synchronen Laden des Abfragedatenspeichers zu tun haben (Standardverhalten während einer Datenbankwiederherstellung).

Hinweis: Ab SQL Server 2019 (15.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 7752 hat keine Auswirkungen.

Bereich: nur global
7806 Aktiviert eine dedizierte Administratorverbindung (Dedicated Administrator Connection, DAC) in SQL Server Express. Standardmäßig werden in SQL Server Express keine DAC-Ressourcen reserviert. Weitere Informationen finden Sie unter Diagnoseverbindung für Datenbankadministratoren.

Bereich: nur global
8011 Deaktiviert den Ringpuffer für Ressourcenmonitor. Sie können die Diagnoseinformationen in diesem Ringpuffer verwenden, um Bedingungen vom Typ „Nicht genügend Arbeitsspeicher“ zu diagnostizieren. Wenn Sie dieses Ablaufverfolgungsflag verwenden, werden daher die Informationen, die zum Diagnostizieren der Leistungs- und Funktionsprobleme mit SQL Server verfügbar sind, erheblich reduziert. Das Ablaufverfolgungsflag 8011 gilt immer für den gesamten Server und verfügt über einen globalen Geltungsbereich. Sie können das Ablaufverfolgungsflag 8011 beim Start oder in einer Benutzersitzung aktivieren.

Bereich: nur global
8012 Deaktiviert den Ringpuffer für Zeitplaner. SQL Server zeichnet jedes Mal ein Ereignis im Ringpufferplan auf, wenn eines der folgenden Ereignisse auftritt:
– Ein Planer wechselt in den Kontext eines anderen Workers.
– Ein Worker wird angehalten.
– Ein Worker wird fortgesetzt.
– Ein Worker wird in den präemptiven oder den nicht präemptiven Modus versetzt.

Sie können die Diagnoseinformationen in diesem Ringpuffer verwenden, um Bedingungen vom Typ „Nicht genügend Arbeitsspeicher“ zu diagnostizieren. Beispielsweise können Sie die Informationen in diesem Ringpuffer verwenden, um Probleme zu behandeln, wenn SQL Server nicht mehr reagiert. Das Ablaufverfolgungsflag 8012 deaktiviert die Aufzeichnung von Ereignissen für Planer. Sie können das Ablaufverfolgungsflag 8012 nur beim Start aktivieren.

WARNUNG: Wenn Sie dieses Ablaufverfolgungsflag verwenden, werden die Informationen, die Ihnen zum Diagnostizieren der Leistungs- und Funktionsprobleme mit SQL Server zur Verfügung stehen, erheblich reduziert.

Bereich: nur global
8015 Deaktiviert die automatische Erkennung und die NUMA-Einrichtung. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
8018 Deaktiviert den Ausnahmeringpuffer. Der Ausnahmeringpuffer zeichnet die letzten 256 Ausnahmen auf, die auf einem Knoten ausgelöst wurden. Jeder Datensatz enthält einige Informationen über den Fehler und eine Stapelüberwachung. Zum Ringpuffer wird ein Datensatz hinzugefügt, wenn eine Ausnahme ausgelöst wird. Das Ablaufverfolgungsflag 8018 deaktiviert die Erstellung des Ringpuffers, und es werden keine Ausnahmeinformationen aufgezeichnet. Das Ablaufverfolgungsflag 8019 deaktiviert die Stapelerfassung während der Datensatzerstellung.

WARNUNG: Wenn Sie dieses Ablaufverfolgungsflag verwenden, werden die Informationen, die Ihnen zum Diagnostizieren der Leistungs- und Funktionsprobleme mit SQL Server zur Verfügung stehen, erheblich reduziert.

Bereich: nur global
8019 Deaktiviert Stapelauflistung für den Ausnahmeringpuffer. Das Ablaufverfolgungsflag 8019 hat keine Auswirkungen, wenn das Ablaufverfolgungsflag 8018 aktiviert ist.

WARNUNG: Wenn Sie dieses Ablaufverfolgungsflag verwenden, werden die Informationen, die Ihnen zum Diagnostizieren der Leistungs- und Funktionsprobleme mit SQL Server zur Verfügung stehen, erheblich reduziert.

Bereich: nur global
8020 Deaktiviert die Überwachung des Workingsets. SQL Server verwendet dieselbe Größe des Arbeitssatzes, wenn die Instanz globale Speicherzustandssignale vom Betriebssystem empfängt. Das Ablaufverfolgungsflag 8020 berücksichtigt die Größe des Arbeitsspeichers des Arbeitssatzes nicht, wenn SQL Server die globalen Speicherzustandssignale interpretiert. Wenn Sie dieses Ablaufverfolgungsflag nicht ordnungsgemäß verwenden, kann hohes Paging und schlechte Leistung auftreten. Daher sollten Sie sich an den Microsoft-Support wenden, bevor Sie das Ablaufverfolgungsflag 8020 aktivieren. Sie können das Ablaufverfolgungsflag 8020 nur beim Start aktivieren.

Bereich: nur global
8032 Setzt die Cachelimitparameter auf die RTM-Einstellung von SQL Server 2005 (9.x) zurück, die im Allgemeinen einen größeren Cache zulässt. Verwenden Sie diese Einstellung, wenn häufig wiederverwendete Cacheeinträge nicht in den Cache passen, und wenn das Problem mit dem Plancache durch die Serverkonfigurations-Option Optimierung für Ad-hoc-Arbeitsauslastung nicht behoben werden konnte.

WARNUNG: Ablaufverfolgungsflag 8032 kann die Leistung mindern, wenn große Caches weniger Arbeitsspeicher für andere Arbeitsspeicherconsumer, z. B. den Pufferpool, verfügbar machen.

Bereich: nur global
8048 Konvertiert NUMA-partitionierte Speicherobjekte in CPU-partitionierte. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2014 (12.x) SP2 und SQL Server 2016 (13.x) ist dieses Verhalten dynamisch und wird durch die Engine gesteuert.

Bereich: nur global
8075 Reduziert die Fragmentierung des virtuellen Prozessadressbereichs (VAS), wenn Sie Zuordnungsfehler der Seite „Arbeitsspeicher“ auf SQL Server 2012 (11.x) (64-Bit) oder SQL Server 2014 (12.x) erhalten. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag gilt für SQL Server 2012 (11.x), SQL Server 2014 (12.x) RTM CU10 und SQL Server 2014 (12.x) SP1 CU3. Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 8075 hat keine Auswirkungen.

Bereich: nur global
8079 Ermöglicht es SQL Server 2014 (12.x) SP2, das Hardwarelayout abzufragen und Soft-NUMA automatisch auf Systemen zu konfigurieren, die über 8 oder mehr CPUs pro NUMA-Knoten verfügen. Die automatische Soft-NUMA ist Hyperthread-fähig (HT/logischer Prozessor). Durch die Partitionierung und Erstellung von weiteren Knoten wird die Hintergrundverarbeitung skaliert, indem die Anzahl von Listenern, Skalierungen sowie Netzwerk- und Verschlüsselungsfunktionen erhöht wird.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2014 (12.x) SP2 verfügbar. Ab SQL Server 2016 (13.x) wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 8079 hat keine Auswirkungen.

Bereich: nur global
8089 In SQL Server 2017 (14.x) CU16 können Sie das Bitmapfiltern aktivieren, um die Größe gefilterter Speicherabbilder zu verringern. SQL Server ordnet eine Bitmap zu, die Speicherseiten nachverfolgt, die aus einem gefilterten Speicherabbild ausgeschlossen werden sollen. „Sqldumper.exe“ liest die Bitmap und filtert Seiten heraus, ohne dass weitere Metadaten des Speicher-Managers gelesen werden müssen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nur für SQL Server 2017 (14.x) CU16 bis CU19. Ab SQL Server 2017 (14.x) CU20 ist die Bitmapfilterung standardmäßig aktiviert. Das Ablaufverfolgungsflag 8089 wird nicht mehr angewendet und wird ignoriert, wenn es aktiviert wird. Die Bitmapfilterung kann über das Ablaufverfolgungsflag 8095 deaktiviert werden. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
8095 Dieses Ablaufverfolgungsflag deaktiviert die Bitmapfilterung für gefilterte Speicherabbilder. SQL Server ordnet eine Bitmap zu, die Speicherseiten nachverfolgt, die aus einem gefilterten Speicherabbild ausgeschlossen werden sollen. „Sqldumper.exe“ liest die Bitmap und filtert Seiten heraus, ohne dass weitere Metadaten des Speicher-Managers gelesen werden müssen.

Hinweis: Dieses Ablaufverfolgungsflag gilt für Builds, für die die Bitmapfilterung standardmäßig aktiviert ist: SQL Server 2016 (13.x) CU13 und höher, SQL Server 2017 (14.x) CU20 und höher sowie SQL Server 2019 (15.x).

Bereich: nur global
8099 Dieses Flag aktiviert eine Behebung für einen Spinlock-Konflikt für High-End-Systeme, auf denen SQL Server 2019 (15.x) ausgeführt wird und viele Benutzer gleichzeitig bedient werden.

Hinweis: Dieses Ablaufverfolgungsflag gilt nur für SQL Server 2019 (15.x) CU2 und CU3. Ab SQL Server 2019 (15.x) CU4 ist dieses Verhalten standardmäßig aktiviert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
8207 Aktiviert Singleton-Updates für die Transaktionsreplikation und CDC. Updates für Abonnenten können als DELETE- und INSERT-Paar repliziert werden. Dabei werden evtl. Geschäftsregeln wie das Auslösen eines UPDATE-Triggers nicht erfüllt. Mit dem Ablaufverfolgungsflag 8207 wird ein Update auf eine eindeutige Spalte, das nur eine Zeile betrifft (ein Singleton-Update), als UPDATE- und nicht als DELETE- oder INSERT-Paar repliziert. Wenn das Update eine Spalte, die eine UNIQUE-Einschränkung aufweist, oder mehrere Zeilen betrifft, wird es dennoch als DELETE- oder INSERT-Paar repliziert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
8721 Meldet an das Fehlerprotokoll, wenn automatische Updatestatistiken ausgeführt werden. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Das Ablaufverfolgungsflag erfordert, dass das Ablaufverfolgungsflag 3605 aktiviert ist.

Bereich: nur global
8744 Dieses Ablaufverfolgungsflag deaktiviert das Vorabrufen für den Operator für geschachtelte Schleifen.

WARNUNG: Die falsche Verwendung dieses Ablaufverfolgungsflags kann zusätzliche physische Lesevorgänge hervorrufen, wenn SQL Server Pläne ausführt, die den Operator für geschachtelte Schleifen enthalten.

Bereich: global und Sitzung
9024 Konvertiert ein Speicherobjekt des globalen Protokolldateipools in ein auf einem NUMA-Knoten partitioniertes Speicherobjekt. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Ab SQL Server 2012 (11.x) SP3 und SQL Server 2014 (12.x) SP1 wird dieses Verhalten durch die Engine gesteuert, und das Ablaufverfolgungsflag 9024 hat keine Auswirkungen.

Bereich: nur global
9109 Deaktiviert den Start der Abfragebenachrichtigungs-Funktionalität. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

WARNUNG: Verwenden Sie dieses Ablaufverfolgungsflag mit Vorsicht. Dieses Ablaufverfolgungsflag kann in einer begrenzten Zahl von Szenarien nützlich sein, primär um Probleme zu behandeln oder zu isolieren.

Bereich: global und Sitzung
9347 Deaktiviert den Batchmodus für den Sort-Operator. SQL Server 2016 (13.x) führt für den Batchmodus einen neuen Sortier-Operator ein, der die Leistung vieler Analyseabfragen steigert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9348 Dieses Flag ermöglicht die Verwendung von Kardinalitätsschätzungen des Abfrageoptimierers, um zu entscheiden, ob BULK INSERT für einen gruppierten Columnstore-Index initiiert werden soll oder nicht. Wenn die geschätzte Anzahl von einzufügenden Zeilen kleiner als 102.400 ist, verwendet die Datenbank-Engine BULK INSERT. Wenn die Schätzung mehr als 102.400 Zeilen beträgt, wird BULK INSERT initiiert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9349 Deaktiviert den Batchmodus für den Top N Sort-Operator. SQL Server 2016 (13.x) führt einen neuen Sortier-Operator für TOP N-Abfragen im Batchmodus ein, der die Leistung vieler Analyseabfragen steigert.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9358 Deaktiviert den Batchmodus für den Sort-Operator. Weitere Informationen finden Sie in diesem Microsoft-Support-Artikel.

Hinweis: Ab SQL Server 2017 (14.x) ist dieses Verhalten standardmäßig aktiviert, und dieses Ablaufverfolgungsflag hat keine Auswirkungen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9389 Aktiviert die zusätzliche dynamische Speicherzuweisung für Batchmodusoperatoren. Wenn eine Abfrage nicht den Arbeitsspeicher erhält, den sie benötigt, kommt es zu einem Datenüberlauf zu „TempDB“, was zusätzliche E/A erzeugt und Auswirkungen auf die Abfrageleistung haben kann. Wenn das Ablaufverfolgungsflag der dynamische Speicherzuweisung aktiviert ist, kann ein Batchmodusoperator zusätzlichen Arbeitsspeicher anfordern und Überläufe zu „TempDB“ verhindern, wenn zusätzlicher Speicher verfügbar ist. Weitere Informationen finden Sie im Abschnitt Auswirkungen von minimalen Arbeitsspeicher pro Abfrage im Handbuch zur Architektur der Speicherverwaltung.

Bereich: global oder Sitzung
9398 Deaktiviert den Operator für einen adaptiven Join. Durch diesen können Sie wählen, ob eine Methode für Hashjoins oder Joins geschachtelter Schleifen zurückgestellt wird, nachdem die erste Eingabe überprüft wurde. Dies wurde in SQL Server 2017 (14.x) eingeführt. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9410 Dieses Flag aktiviert eine standardmäßig nicht aktivierte Problembehebung für eine Abfrage, die einen Hashaggregatoperator und Überläufe verwendet. Durch das Aktivieren dieses Ablaufverfolgungsflags wird der verfügbare Arbeitsspeicher für separate Hashvorgänge erhöht. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9453 Deaktiviert die Batchmodusausführung. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9471 Bewirkt, dass SQL Server unter dem Kardinalitätsschätzungsmodell für den Abfrageoptimierer mit Version SQL Server 2014 (12.x) und höher einen Plan mithilfe minimaler Selektivität für einzelne Tabellenfilter generiert

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Hinweis: Dieses Ablaufverfolgungsflag gilt nicht für Version 70 der Kardinalitätsschätzung oder höher. Verwenden Sie stattdessen das Ablaufverfolgungsflag 4137.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9476 Bewirkt, dass SQL Server unter dem Kardinalitätsschätzungsmodell für den Abfrageoptimierer mit Version SQL Server 2014 (12.x) und höher einen Plan mithilfe der Simple-Containment-Annahme statt mit der Base-Containment-Annahme generiert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9481 Mit diesem Flag können Sie das Kardinalitätsschätzungsmodell für den Abfrageoptimierer auf das von SQL Server 2012 (11.x) und früheren Versionen festlegen, unabhängig vom Kompatibilitätsgrad der Datenbank. Weitere Informationen finden Sie im folgenden Microsoft-Support-Artikel.

Damit Sie dies ab SQL Server 2016 (13.x) auf der Datenbankebene erreichen, lesen Sie die Informationen zur Option LEGACY_CARDINALITY_ESTIMATION unter ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Ab SQL Server 2016 (13.x) SP1 müssen Sie den Abfragehinweis USE HINT 'FORCE_LEGACY_CARDINALITY_ESTIMATION' hinzufügen, anstatt das Ablaufverfolgungsflag zu verwenden, um dies auf Abfrageebene zu erreichen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9485 Hiermit wird die SELECT-Berechtigung für DBCC SHOW_STATISTICS deaktiviert. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
9488 Dieses Flag legt die feste Schätzung für Tabellenwertfunktionen auf den Standardwert 1 fest (entspricht dem Standardwert gemäß dem Kardinalitätsschätzungsmodell für den Abfrageoptimierer von SQL Server 2008 R2 und früheren Versionen), wenn das Kardinalitätsschätzungsmodell für den Abfrageoptimierer von SQL Server 2012 (11.x) und höheren Versionen verwendet wird.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9495 Deaktiviert die Parallelität während der Einfügung für INSERT...SELECT-Vorgänge und betrifft sowohl Benutzer-als auch temporäre Tabellen. Informationen finden Sie in diesem Microsoft Support-Artikel.

Bereich: global oder Sitzung
9567 Aktiviert die Komprimierung des Datenstroms für Always On-Verfügbarkeitsgruppen während des automatischen Seedings. Die Komprimierung kann die Übertragungszeit während des Seedings erheblich reduzieren und die Arbeitslast für den Prozessor erhöhen. Weitere Informationen finden Sie unter Automatisches Initialisieren der Always On-Verfügbarkeitsgruppe und Optimieren der Komprimierung für die Verfügbarkeitsgruppe.

Bereich: global oder Sitzung
9571 Deaktiviert für Verfügbarkeitsgruppen das automatische Seeding in den Standarddatenbankpfad. Weitere Informationen finden Sie unter Datenträgerlayout.

Bereich: global oder Sitzung
9576 Dieses Flag deaktiviert die erweiterte Fehlersammlung für Verfügbarkeitsgruppenfailover, die in SQL Server 2016 (13.x) SP1 CU10, SQL Server 2016 (13.x) SP2 CU2 und SQL Server 2017 (14.x) CU9 eingeführt wurde. Weitere Informationen finden Sie unter SQL Server-Verfügbarkeitsgruppen – Erweitertes Failover auf Datenbankebene.

Bereich: nur global
9591 Deaktiviert die Protokollblockkomprimierung in Always On-Verfügbarkeitsgruppen. Die Protokollblockkomprimierung ist das Standardverhalten, das sowohl auf synchrone als auch auf asynchrone Replikate in SQL Server 2012 (11.x) und SQL Server 2014 (12.x) angewendet wird. In SQL Server 2016 (13.x) wird die Komprimierung nur mit asynchronen Replikaten verwendet.

Bereich: global oder Sitzung
9592 Aktiviert die Protokolldatenstrom-Komprimierung für synchrone Verfügbarkeitsgruppen. Dieses Feature ist für synchrone Verfügbarkeitsgruppen standardmäßig deaktiviert, da die Komprimierung die Latenz erhöht. Weitere Informationen finden Sie unter Optimieren der Komprimierung für die Verfügbarkeitsgruppe.

Bereich: global oder Sitzung
9929 Verringert speicherinterne Prüfpunktdateien mit je 1 MB. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
9939 Aktiviert parallele Pläne und parallele Scanvorgänge von speicheroptimierten Tabellen und Tabellenvariablen in DML-Vorgängen, die auf speicheroptimierte Tabellen oder Tabellenvariablen verweisen, solange sie in SQL Server 2016 (13.x) nicht das Ziel des DML-Vorgangs sind. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Das Ablaufverfolgungsflag 9939 ist nicht erforderlich, wenn das Ablaufverfolgungsflag 4199 auch explizit aktiviert ist.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
9944 Dieses Flag aktiviert eine standardmäßig nicht aktivierte Problembehebung für lange Wiederherstellungszeiten bei Datenbanken, wenn eine Datenbank über eine große Anzahl von arbeitsspeicheroptimierten Tabellen oder arbeitsspeicheroptimierten Tabellentypen verfügt und Blockierungen mit dem Wartetyp PREMPTIVE_OS_FINDFILE oder PREEMPTIVE_OS_CREATEDIRECTORY auftreten. Weitere Informationen finden Sie in diesem Microsoft-Support-Artikel und in diesem Microsoft-Support-Artikel.

Bereich: nur global
10054 Dieses Flag deaktiviert die Abfrageoptimiererregel von SQL Server, die die Korrelation von Unterabfragen in OR-Prädikaten in äußere Verknüpfungen aufhebt.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Hinweis: Stellen Sie sicher, dass Sie diese Option ausgiebig testen, bevor Sie sie in einer Produktionsumgebung bereitstellen.

Bereich: global oder Sitzung oder Abfrage (QUERYTRACEON)
10204 Deaktiviert die Zusammenführung/Neukomprimierung während der Neuorganisation des Columnstore-Index. Wenn in SQL Server 2016 (13.x) ein Columnstore-Index neu organisiert wird, werden alle kleinen komprimierten Zeilengruppen automatisch in größeren komprimierten Zeilengruppen zusammengeführt, und alle Zeilengruppen mit einer große Anzahl von gelöschten Zeilen werden neu komprimiert.

Hinweis: Das Ablaufverfolgungsflag 10204 wird nicht auf Columnstore-Indizes angewendet, die in speicheroptimierten Tabellen erstellt werden.

Bereich: global oder Sitzung
10207 Durch dieses Flag können beim Überprüfen eines gruppierten Columnstore-Index (Clustered Columnstore Index, CCI) beschädigte Segmente oder Metadaten übersprungen werden, was das Abrufen von Daten aus einem beschädigten CCI ermöglicht. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: global oder Sitzung
10316 Aktiviert die Erstellung von zusätzlichen Indizes in internen speicheroptimierten temporalen Staging-Tabellen neben dem Standardindex. Wenn bestimmte Abfragemuster Spalten enthalten, die nicht vom Standardindex abgedeckt werden, sollten Sie zusätzliche hinzufügen.

Hinweis: Systemversionierte temporale Tabellen für speicheroptimierte Tabellen sind dafür vorgesehen, dass sie hohen Transaktionsdurchsatz bereitstellen. Denken Sie daran, dass das Erstellen zusätzlicher Indizes einen Mehraufwand für DML-Vorgänge hervorrufen kann, die Zeilen in der aktuellen Tabelle aktualisieren oder löschen. Mit den zusätzlichen Indizes sollten Sie versuchen, das richtige Gleichgewicht zwischen der Leistung von temporalen Abfragen und DML-Aufwand zu finden.

Bereich: global oder Sitzung
11023 Deaktiviert die Verwendung der letzten permanenten Samplingrate für alle nachfolgenden Statistikupdates, in denen keine Samplingrate explizit als Teil der UPDATE STATISTICS-Anweisung angegeben wurde. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Bereich: nur global
11024 Aktiviert das Auslösen des automatischen Updates von Statistiken, wenn die Änderungsanzahl einer Partition den lokalen Schwellenwert überschreitet. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU3 und höheren Builds verfügbar.

Bereich: nur global
11047 Wendet das Standardtimeout, das von query wait (s) oder der REQUEST_MEMORY_GRANT_TIMEOUT_SEC-Konfiguration von Resource Governor festgelegt wird, auf die Columnstore-Indexerstellungsvorgänge an. Weitere Informationen finden Sie im folgenden Microsoft Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP2 CU5, SQL Server 2017 (14.x) CU14 und höheren Builds verfügbar.

Bereich: nur global
11064 Verbessert die Skalierbarkeit von Vorgängen, bei denen Daten in Columnstore-Indizes geladen werden, indem die Speicherverteilung zwischen den Anweisungen SELECT und INSERT optimiert wird. Weitere Informationen zum Laden von Daten in einen Columnstore-Index finden Sie unter Columnstore-Indizes: Leitfaden zum Datenladevorgang.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Bereich: nur global
11068 Dieses Ablaufverfolgungsflag verwendet den für den maximalen Grad an Parallelität (MAXDOP) konfigurierten Server-, Datenbank- oder Ressourcenpoolwert für Einfügevorgänge in Columnstore-Indizes. Weitere Informationen zum Überschreiben von Parallelitätsgraden finden Sie im Handbuch zur Architektur der Abfrageverarbeitung.

Wichtig: Dieses Ablaufverfolgungsflag ist nur wirksam, wenn auch das Ablaufverfolgungsflag 11064 aktiviert ist.

Wichtig: Verwenden Sie dieses Ablaufverfolgungsflag, wenn schnellere Datenladevorgänge gegenüber der Beibehaltung der Qualität von Columnstore-Segmenten bevorzugt werden. Dieses Ablaufverfolgungsflag kann beim Laden von 1.048.577 Zeilen in einen Columnstore bspw. zu mehr als einer komprimierten Zeilengruppe führen, wenn der Einfügevorgang im Parallelmodus ausgeführt wird. Ohne dieses Ablaufverfolgungsflag würde der Einfügevorgang eine einzelne komprimierte Zeilengruppe hervorbringen.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) und höheren Builds verfügbar.

Bereich: nur global
11631 ALTER INDEX ... REORGANIZE und der Zusammenführungstask im Hintergrund bereinigen die gelöschten Zeilen in einer Zeilengruppe eines Columnstore-Index nur dann, wenn ein bestimmter Schwellenwert von Zeilen aus dieser Zeilengruppe gelöscht wurde. Der Standardschwellenwert liegt bei zehn Prozent des maximalen Zeilenlimits (1 Million) oder 100.000 Zeilen.

Mit diesem Ablaufverfolgungsflag wird der Schwellenwert auf 10 % der Gesamtanzahl der aktuellen Zeilen in einer Columnstore--Zeilengruppe geändert. Wenn beispielsweise eine Zeilengruppe 20.000 Zeilen enthält, liegt der Schwellenwert bei 2.000 gelöschte Zeilen, bevor für diese Zeilengruppe eine Bereinigung vorgesehen ist. Informationen finden Sie in diesem Microsoft-Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) CU9 und höheren Builds verfügbar.

Bereich: nur global
11634 ALTER INDEX ... REORGANIZE und der Zusammenführungstask im Hintergrund bereinigen die gelöschten Zeilen in einer Zeilengruppe eines Columnstore-Index nur dann, wenn ein bestimmter Schwellenwert von Zeilen aus dieser Zeilengruppe gelöscht wurde. Der Standardschwellenwert liegt bei 10 % des maximalen Zeilenlimits (1 Million) oder 100.000 Zeilen.

Mit diesem Ablaufverfolgungsflag wird der Schwellenwert auf 1 % der Zeilen in einer Columnstore--Zeilengruppe geändert. Wenn diese Option zusammen mit dem Ablaufverfolgungsflag 11631 aktiviert ist, liegt der Schwellenwert bei 1 % der aktuellen Anzahl von Zeilen in einer Zeilengruppe und nicht bei 1 % von einer Million Zeilen. Informationen finden Sie in diesem Microsoft-Support-Artikel.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2019 (15.x) CU9 und höheren Builds verfügbar.

Bereich: nur global
13116 Dieses Ablaufverfolgungsflag deaktiviert die Behebung des Fehlers 13685819. Verwenden Sie dieses Ablaufverfolgungsflag, wenn nach Anwendung von SQL Server 2016 (13.x) SP2 CU16 ein Problem auftritt, bei dem DML-Abfragen (einfügen/aktualisieren/löschen), die parallele Pläne verwenden, nicht abgeschlossen werden können und „HP_SPOOL_BARRIER“-Wartevorgänge auftreten.

Hinweis: Dieses Ablaufverfolgungsflag ist in SQL Server 2016 (13.x) SP2 CU16 verfügbar.

Bereich: nur global

Beispiele

Im folgenden Beispiel wird mithilfe von DBCC TRACEON das Ablaufverfolgungsflag 3205 für alle Sitzungen auf Serverebene festgelegt.

DBCC TRACEON (3205,-1);  

Sie können alle den Plan beeinflussenden Hotfixes aktivieren, die von den Ablaufverfolgungsflags 4199 und 4137 für eine bestimmte Abfrage gesteuert werden.

SELECT x FROM correlated WHERE f1 = 0 AND f2 = 1 OPTION (QUERYTRACEON 4199, QUERYTRACEON 4137);

Weitere Informationen