Bei Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

EINFÜHRUNG

Versionen von Microsoft SQL Server nach SQL Server 2000 Service Pack 3 (SP3) haben die meisten Hotfixes für den Abfrageoptimierer standardmäßig bereitgestellt, um zu verhindern, dass bestehende Produktionskunden erwartete Planänderungen sehen, die zu Leistungs regressionen führen können. Zunächst wurde jeder Hotfix mit einem separaten Ablaufverfolgungsflag geliefert. Später wurde diese Vorgehensweise geändert, sodass die meisten Kennzeichnungen mit einem einzigen Ablaufverfolgungskennzeichen (4199) kombiniert wurden. Diese neue Methode wurde in mehreren Versionen initiiert, beginnend mit den folgenden Updates:

  • SQL Server 2005 Service Pack 3 (SP3) Kumulatives Update 6

  • SQL Server 2008 Service Pack 1 (SP1) – kumulatives Updatepaket 7

  • SQL Server 2008 R2 (RTM)

Ablaufverfolgungskennzeichen 4199 wurde verwendet, um Hotfixes zu sammeln, die in einer zukünftigen Version standardmäßig verwendet werden sollten, während andere Ablaufverfolgungskennzeichen für Situationen verwendet wurden, in denen ein Fix in aktueller Form nicht standardmäßig aktiviert werden sollte. Beginnend mit SQL Server 2016 RTM wird die Einstellung für Datenbank-COMPATIBILITY_LEVEL standardmäßig aktiviert, wenn Die Ablaufverfolgungsflag 4199-bezogene Hotfixes standardmäßig aktiviert ist. In diesem Artikel werden die Mechanismen und die Richtlinie beschrieben, wie Plan-beeinträchtigungen für Hotfixes für SQL Server 2016 und höher bereitgestellt werden.

Weitere Informationen

In SQL Server 2016 werden Die Hotfixes für Ablaufverfolgungsflag 4199, die für frühere Versionen von SQL Server veröffentlicht wurden, unter Datenbank COMPATIBILITY_LEVEL 130 aktiviert, ohne aktiviertes Ablaufverfolgungsflag 4199. Ablaufverfolgungsflag 4199 wird verwendet, um zukünftige Hotfixes für SQL Server 2016 für Datenbanken mithilfe der Kompatibilitätsstufe 130 zu veröffentlichen. Da Ablaufverfolgungsflag 4199 nur für Kunden empfohlen wird, bei denen bestimmte Leistungsprobleme auftreten, wird Kunden empfohlen, Ablaufverfolgungsflag 4199 zu entfernen, nachdem sie ihre Datenbanken auf die neueste Kompatibilitätsstufe migriert haben, da Ablaufverfolgungsflag 4199 für zukünftige Fehlerbehebungen wiederverwendet wird, die möglicherweise nicht für Ihre Anwendung gelten und unerwartete Änderungen der Planleistung in einem Produktionssystem verursachen können. Dies bedeutet, dass für jede Kompatibilitätsstufe, die in einer Produktversion unterstützt wird, unterschiedliche Hotfixes für Ablaufverfolgungsflag 4199 aktiviert sind. Die neueste Kompatibilitätsstufe aktiviert bereits alle vorherigen Fixes unter Ablaufverfolgungsflag 4199. Dies bedeutet, dass durch das Upgrade einer Datenbank auf die neueste Kompatibilitätsstufe und das Entfernen des Ablaufverfolgungsflags 4199 weiterhin alle Korrekturen möglich sind, die eine Arbeitsauslastung vor dem Upgrade der Datenbank einverberfolgt hat, nur keine neuen Fixes. Wenn bei Kunden zu einem späteren Zeitpunkt Probleme mit der Abfrageleistung auftreten, experimentieren Sie mit der Aktivierung der Option mit Datenbankbereich QUERY_OPTIMIZER_HOTFIXES oder mit einem Abfragehinweis ENABLE_QUERY_OPTIMIZER_HOTFIXES in einer Testumgebung, um zu ermitteln, ob die Probleme behoben wurden. Weitere Informationen finden Sie in der QUERY_OPTIMIZER_HOTFIXES

Hinweis Für Datenbanken, die in SQL Server 2016 erstellt wurden, wird standardmäßig die Kompatibilitätsebene 130 verwendet, und es ist bereits eine neue Optimierungslogik aktiviert.

Der Hauptvorteil dieses Modells besteht in der Reduzierung des Risikos für Produktionssysteme während des Upgradeprozesses. Bei diesem Ansatz wird die Installation einer neuen Hauptversion von SQL Server vom automatischen Aktivieren aller Änderungen des Abfrageprozessors getrennt. Da hauptversionsupgrades das Dateiformat ändern und nicht umkehrbar sind, ist es eine gute Idee, die COMPATIBILITY_LEVEL-Einstellung zu verwenden, da dies einem Kunden das schnelle Downgrade ermöglicht, wenn während eines Upgrades ein unerwartetes Leistungsproblem bei einem Plan gefunden wird. Wenn ein Kunde eine unerwartete Planänderung findet, die ein Anwendungsupgrade blockiert, kann der Kunde die Situation lösen, indem er einen entsprechenden Planhinweis auftut, indem er den vorherigen Plan mithilfe der Abfrage-Store erzwingen kann, oder er kann die Situation lösen, indem er den Microsoft-Kundensupport um Hilfe bei dem Problem bittet, um eine Problemumgehung oder einen Hotfix zu erhalten. Wenn alle Probleme geringer sind, kann das Upgrade fortgesetzt werden. Kunden sollten diese Funktion in ihre Upgradeplanung für SQL Server 2016 integrieren.

In der folgenden Tabelle wird das Modell für die Funktionsweise der Ablaufverfolgungsflag 4199 ab SQL Server 2016 erläutert.

Einstellung

SQL der Kompatibilitätsstufe

Ablaufverfolgungsflag 4199

Hotfixes für Optimierer vor SQL Server 2016 RTM

Hotfixes für Optimierer nach SQL Server 2016 RTM

1.

120

Aus

Deaktiviert

Deaktiviert

2.

120

Ein

Aktiviert

Deaktiviert

3.

130

Aus

Aktiviert durch Kompatibilitätsstufe

Deaktiviert

4.

130

Ein

Aktiviert durch Kompatibilitätsstufe

Aktiviert durch Kompatibilitätsstufe

Hinweis Einstellung Nr. 3 wird für Kunden empfohlen, die ein Upgrade auf SQL Server 2016 durchführen.

Für Hauptversionen nach SQL Server 2016 plant Microsoft, dieses Wartungsmodell weiterhin für Hotfixes für Optimierer zu verwenden. Standardmäßig oder in jeder Version werden alle Trace Flag 4199 Hotfixes aus der vorherigen Version auf der nächsten Kompatibilitätsebene aktiviert. Das bedeutet, dass das Ablaufverfolgungsflag 4199 für Kunden nach der Migration auf die neueste Kompatibilitätsstufe als empfohlen wird. Spätere Hotfixes verwendeten Ablaufverfolgungsflag 4199, um Korrekturen für Kunden zu aktivieren, die diese speziellen Hotfixes in einer Anwendung aktivieren müssen. Kunden wird empfohlen, Ablaufverfolgungsflag 4199 nach dem Upgrade einer Anwendung auf die neueste Kompatibilitätsstufe zu deaktivieren, um zu verhindern, dass unerwartete zukünftige Optimierungsänderungen für eine Anwendung unerwartet aktiviert werden. Dieses Upgrade auf die neueste Kompatibilitätsstufe und das Entfernen des Ablaufverfolgungsflags 4199 ermöglicht nach wie vor alle Korrekturen, die eine Arbeitsauslastung vor dem Upgrade ein nutzen konnte, nur keine neuen Fixes.

Hinweis Während viele Hotfixes für Optimierer unter Ablaufverfolgungskennzeichen 4199 aktiviert sind, verwenden einige andere Ablaufverfolgungskennzeichen. Ablaufverfolgungskennzeichen 4199 von der Vergangenheit abgedeckte Ablaufverfolgungskennzeichen, die weit verbreitet sind und wahrscheinlich in einer zukünftigen Version standardmäßig aktiviert werden. Alternative Ablaufverfolgungskennzeichen werden in Hotfixes verwendet, bei denen die Bedingungen nur für wenige Kunden spezifisch sind, bei denen der Fix Leistungs regressionen in anderen Anwendungsarten verursachen kann oder wenn die interne Funktionalität Änderungen sehen kann, bevor sie für alle Benutzer aktiviert werden kann. Microsoft verwendet bei Bedarf weiterhin andere Ablaufverfolgungskennzeichen, um das Produkt zu bedienen.

Hinweis Dieser Artikel befasst sich mit dem Modell für die Veröffentlichung von Hotfixes für Ablaufverfolgungsflag 4199 auf der neuesten Kompatibilitätsstufe des neuesten Produkts. (Zum Zeitpunkt der Veröffentlichung ist dies SQL Server 2016.) Hotfixes für Optimierer werden möglicherweise für ältere in den Marktversionen von SQL Server oder auf niedrigeren Kompatibilitätsstufen (120 oder früher) von SQL Server 2016 veröffentlicht. Microsoft wertet jeden Fall aus und ermittelt, ob Ablaufverfolgungsflag 4199 oder ein anderes Ablaufverfolgungsflag verwendet werden soll. Da Nicht-Hotfix-Änderungen auch aktiviert werden, wenn ein Wechsel auf eine spätere Kompatibilitätsstufe erfolgt, gibt es keine spezifische Zusage, dass während eines Upgrades keine Planänderungen vorgenommen werden (mit oder ohne Ablaufverfolgungsflag 4199). Kunden sollten Änderungen an der Kompatibilitätsstufe für Produktionsanwendungen immer sorgfältig testen und Entschärfungstechnologien wie die Abfrage-Store verwenden, wenn ein Leistungsproblem im Zusammenhang mit der Planauswahl vor liegt.

Vor der Einführung des Ablaufverfolgungskennzeichens 4199 wurden die folgenden Ablaufverfolgungskennzeichen für Hotfixes des Abfrageprozessors verwendet:

4101, 4102, 4103, 4104, 4105, 4106, 4107, 4108, 4109, 4110, 4111, 4115, 4116, 4117, 4119, 4120, 4121, 4122, 4124, 4125, 4126, 4127, 4128, 4129, 4131, 4133, 4135.

SQL Server 2012 und höher

Ablaufverfolgungsflag 4199 ist in den Veröffentlichungsversionen von SQL Server 2012 und höher enthalten.

So aktivieren Sie Ablaufverfolgungsflag 4199

Sie können Ablaufverfolgungsflag 4199 beim Start oder in einer Benutzersitzung aktivieren. Dieses Ablaufverfolgungsflag hat entweder Auswirkungen auf globaler Ebene oder auf Sitzungsebene. Zum Aktivieren des Ablaufverfolgungsflags 4199 verwenden Sie den Befehl DBCC TRACEON oder -T 4199 als Startparameter.

Bei Verwendung von DBCC TRACEON\TRACEOFF wird dadurch kein neuer zwischengespeicherter Plan für gespeicherte Prozeduren generiert. Pläne können sich im Cache befinden, die ohne Ablaufverfolgungsflag erstellt wurden.

Ausführliche Informationen zum Aktivieren oder Deaktivieren von Ablaufverfolgungskennzeichen und Erläuterungen zu Ablaufverfolgungskennzeichen auf globaler und Sitzungsebene finden Sie in den folgenden Themen in SQL Server Online:

Informationsquellen

Wenn Sie weitere Informationen zum Benennungsschema für SQL Server erhalten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzeigen:

822499
Neues Benennungsschema für Microsoft SQL Server Softwareupdatepakete
Wenn Sie weitere Informationen zur Terminologie für Softwareupdates erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base zu lesen:

824684
Beschreibung der Standardterminologie zur Beschreibung von Microsoft-Softwareupdates

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?
Wenn Sie auf "Absenden" klicken, wird Ihr Feedback zur Verbesserung von Produkten und Diensten von Microsoft verwendet. Ihr IT-Administrator kann diese Daten sammeln. Datenschutzbestimmungen.

Vielen Dank für Ihr Feedback!

×