Optimierungsoptionen für SQL Server bei Ausführung im Hochleistungs-Arbeitsauslastungen

Artikel-ID: 920093 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

EINFÜHRUNG

Dieser Artikel beschreibt verschiedene Ablaufverfolgungsflags als Optimierungsoptionen Microsoft SQL Server 2005 und SQL Server 2008. Sie können folgenden Ablaufverfolgungsflags zur Verbesserung der Leistung von SQL Server verwenden. In der Regel verwenden Sie die folgenden Ablaufverfolgungsflags, wenn SQL Server in Hochleistungs-Arbeitsauslastungen ausgeführt wird.

Hinweis Ablaufverfolgungsflags, die dieser Artikel beschreibt, sind erweiterte Techniken optimieren. Erwägen Sie diese Ablaufverfolgungsflags nur, nachdem Sie weitere grundlegende und Routine Optimierungen durchgeführt haben. Beispielsweise sollten Sie die folgenden Ablaufverfolgungsflags verwenden, nachdem Sie die folgenden Optimierungen durchgeführt haben:
  • Indexanalyse
  • I/o-Lastausgleich
  • SQL Abfrage Profilerstellung
  • Systemstatistiken monitoring
Darüber hinaus sind die folgenden Ablaufverfolgungsflags vor allem hilfreich, auf High-End-Servern, die die folgenden Merkmale aufweisen:
  • Viele CPUs, z. B. mehr als acht CPUs
  • Viele der Hauptspeicher, z. B. mehr als 8 Gigabyte (GB) Arbeitsspeicher
  • Hohe e/a-Raten, z. B. mehr als 10.000 physische e/a pro Sekunde oder mehr als 500 Megabyte (MB) pro Sekunde
Ablaufverfolgungsflags, die dieser Artikel beschreibt, können die Leistung unter einige Arbeitslasten verringern. Es wird empfohlen, dass Sie die Auswirkungen auf die Arbeitsauslastung auf einem Testsystem ausgewertet werden, bevor Sie Änderungen in einer Produktionsumgebung bereitstellen.

Hinweis Die Informationen in diesem Artikel gelten auch für die CTP-Versionen von SQL Server 2008 R2.

Weitere Informationen

Trace-Flag 652: Disable Seite vorab Scans

Trace-Flag 652 deaktiviert Seite Vorauslesen während des Scans. Sie können Ablaufverfolgungsflags 652 beim Start oder in einer Benutzersitzung aktivieren. Wenn Sie Ablaufverfolgungsflags 652 beim Systemstart aktivieren, hat das Ablaufverfolgungsflag globalen Gültigkeitsbereich. Wenn Sie das Ablaufverfolgungsflag 652 in einer Benutzersitzung aktivieren, hat das Ablaufverfolgungsflag Sitzungsbereich. Wenn Sie das Ablaufverfolgungsflag 652 aktivieren, bringt SQL Server Datenbankseiten nicht mehr in den Pufferpool, bevor diese Datenbankseiten von Scans verwendet werden. Wenn Sie das Ablaufverfolgungsflag 652 aktivieren, weisen Abfragen, die von der Seite vorab Funktion profitieren die niedrige Leistung.

Trace-Flag 661: der Vorgang der Ghost Datensatz entfernen deaktivieren

Das Ablaufverfolgungsflag 661 deaktiviert des Prozess der Ghost Datensatz entfernen. Ein Ghost-Datensatz ist das Ergebnis eines Löschvorgangs. Wenn Sie einen Datensatz löschen, bleibt der gelöschte Datensatz als Ghost-Datensatz. Später wird der gelöschte Datensatz vom Ghost Datensatz Entfernungsprozess gelöscht. Wenn Sie diesen Prozess deaktivieren, wird der gelöschte Datensatz nicht gelöscht. Daher wird der Speicherplatz, der der gelöschte Datensatz nicht freigegeben. Dieses Verhalten wirkt sich auf Verbrauch und Leistung des Scan-Vorgänge.

Wenn Sie das Ablaufverfolgungsflag 661 beim Start oder in einer Benutzersitzung aktivieren, das Ablaufverfolgungsflag 661 immer über den Server angewendet und globalem Gültigkeitsbereich. Wenn Sie dieses Ablaufverfolgungsflags deaktivieren, das Ghost Datensatz entfernen Works richtig verarbeitet.

Trace-Flag 834: Verwenden Sie Microsoft Windows große Seite Zuweisungen für den Pufferpool

Das Ablaufverfolgungsflag 834 bewirkt, dass SQL Server große Seitenreservierungen Microsoft Windows für den Speicher zu verwenden, die für den Pufferpool zugeordnet wird. Die Seitengröße variiert je nach Hardwareplattform kann, die Seitengröße jedoch von 2 MB auf 16 MB. Große Seiten werden beim Start zugewiesen und bleiben während der gesamten Lebensdauer des Prozesses. Das Ablaufverfolgungsflag 834 verbessert die Leistung durch Erhöhung der Effizienz der Translation Look-Aside Buffer (TLB) in der CPU.

Das Ablaufverfolgungsflag 834 gilt nur für 64-Bit-Versionen von SQL Server. Sie müssen das Benutzerrecht " Lock Pages in Memory " So aktivieren Sie das Ablaufverfolgungsflag 834. Sie können Ablaufverfolgungsflags 834 nur beim Systemstart aktivieren.

Das Ablaufverfolgungsflag 834 verhindern möglicherweise des Servers starten, wenn der Speicher fragmentiert ist und große Seiten reserviert werden können. Aus diesem Grund ist das Ablaufverfolgungsflag 834 am besten geeignet für Server, die für SQL Server vorgesehen sind.

Hinweis  Bei Verwendung die Spaltenindex Store-Funktion SQL Server 2012, empfehlen wir nicht, das Ablaufverfolgungsflag 834 einschalten.

Weitere Informationen zu Unterstützung großer Pages in Windows finden Sie auf der folgenden Microsoft Developer Network (MSDN)-Website:
http://msdn2.Microsoft.com/en-us/library/aa366720.aspx

Trace-Flag 836: Verwenden Sie die Option max Server Memory für den Pufferpool

Das Ablaufverfolgungsflag 836 führt SQL Server den Pufferpool Systemstart basierend auf dem Wert der Option max Server Memory nicht auf den gesamten physischen Speicher entsprechend Größe. Das Ablaufverfolgungsflag 836 können Sie um die Anzahl der Puffer Sicherheitsbeschreibungen zu reduzieren, die beim Starten im Modus für 32-Bit-Address Windowing Extensions (AWE) zugewiesen werden.

Das Ablaufverfolgungsflag 836 gilt nur für 32-Bit-Versionen von SQL Server, die die AWE-Zuordnung aktiviert haben. Sie können Ablaufverfolgungsflags 836 nur beim Systemstart aktivieren.

Trace-Flag 2301: Erweiterte Entscheidung Unterstützung Optimierungen aktivieren

Das Ablaufverfolgungsflag 2301 ermöglicht erweiterter Optimierungen, die speziell für decision Support-Abfragen sind. Diese Option gilt für Decision Support Verarbeitung großer Datenmengen.


Sie können das Ablaufverfolgungsflag 2301 beim Start oder in einer Benutzersitzung aktivieren. Wenn Sie Ablaufverfolgungsflags 2301 beim Systemstart aktivieren, hat das Ablaufverfolgungsflag globalen Gültigkeitsbereich. Wenn Sie das Ablaufverfolgungsflag 2301 in einer Benutzersitzung aktivieren, hat das Ablaufverfolgungsflag Sitzungsbereich.

Ablaufverfolgungsflags, die verschiedenen Ringpuffer deaktivieren

Einem Ringpuffer ist ein interner Diagnose Mechanismus in SQL Server, die Sie verwenden können, um weitere Informationen zum Server aufzuzeichnen. In der Regel verwenden Sie diese Informationen von Serverproblemen. Mithilfe der dynamischen Verwaltungssicht sys.dm_os_ring_buffers durchsuchen Sie den Inhalt der Ringpuffer.

Deaktivieren in der Regel einem Ringpuffer verbessert die Leistung. Allerdings kann Deaktivieren eines Ringpuffers beseitigt Diagnoseinformationen, verwendet Microsoft-Support und verhindern eine erfolgreiche Problembehandlung.

Die folgenden Ablaufverfolgungsflags deaktivieren verschiedene Ringpuffer.

Trace-Flag 8011: Deaktivieren der Ringpuffer für die Ressourcen-Monitor

Das Ablaufverfolgungsflag 8011 deaktiviert die Auflistung der zusätzliche Diagnoseinformationen für Ressourcen-Monitor. Die Informationen können in diesem Ringpuffer Sie um Out-of-Memory Bedingungen zu diagnostizieren. Das Ablaufverfolgungsflag 8011 immer über den Server angewendet und globalem Gültigkeitsbereich. Sie können das Ablaufverfolgungsflag 8011 beim Start oder in einer Benutzersitzung aktivieren.

Trace-Flag 8012: Deaktivieren der Ringpuffer für Planer

SQL Server in den Ringpuffer Zeitplan ein Ereignis aufgezeichnet wird jedes Mal, dass eine der folgenden Ereignisse auftritt:
  • Ein Planer wechselt den Kontext einer anderen Arbeitskraft.
  • Eine Arbeitskraft ausgesetzt ist.
  • Eine Arbeitskraft wird fortgesetzt.
  • Eine Arbeitskraft trägt die präemptive oder nicht präemptiven Modus.
Die Diagnoseinformationen können in diesen Ringpuffer um zu Problemen im Terminplan zu analysieren. Beispielsweise können Sie die Informationen in diesem Ringpuffer zur Problembehandlung, wenn SQL Server nicht mehr reagiert.

Trace-Flag 8012 deaktiviert die Aufzeichnung von Ereignissen für den Planer. Sie können Ablaufverfolgungsflags 8012 nur beim Systemstart aktivieren.

Trace-Flag 8018: Deaktivieren der Ausnahme Ringpuffer
Trace-Flag 8019: Stapelauflistung für die Ausnahme Ringpuffer deaktivieren

Der Ausnahme Ringpuffer zeichnet die letzten 256 Ausnahmen, die auf einem Knoten ausgelöst werden. Jeder Datensatz enthält einige Informationen über den Fehler und eine Stapelüberwachung enthält. Der Ringpuffer wird ein Datensatz hinzugefügt, wenn eine Ausnahme ausgelöst wird.

Das Ablaufverfolgungsflag 8018 deaktiviert die Erstellung des Ringpuffers und keine Informationen über die Ausnahme wird aufgezeichnet. Trace-Flag 8019 deaktiviert Stapelauflistung während der Datensatzerstellung. Das Ablaufverfolgungsflag 8019 hat keine Auswirkungen, wenn das Ablaufverfolgungsflag 8018 aktiviert ist. Deaktivieren des Ausnahme Ringpuffers erschwert die diagnose von Problemen, die sich auf interne Server-Fehler beziehen. Sie können das Ablaufverfolgungsflag 8018 und Ablaufverfolgungsflag 8019 nur beim Systemstart aktivieren.

Trace-Flag 8020: working Set Überwachung deaktivieren

SQL Server verwendet die Größe des Workingsets, wenn SQL Server die globalen Speicher Zustand Signale vom Betriebssystem interpretiert. Das Ablaufverfolgungsflag 8020 entfernt der Größe des Workingsets nicht berücksichtigt, wenn SQL Server die globalen Speicher Zustand Signale interpretiert. Verwenden Sie dieses Ablaufverfolgungsflags falsch, schwere ausgelagert und die Leistung ist schlecht. Daher erhalten Sie Microsoft Support, bevor Sie das Ablaufverfolgungsflag 8020 aktivieren.

Sie können Ablaufverfolgungsflags 8020 nur beim Systemstart aktivieren.

Trace-Flag 8744: Vorauslesen für Bereiche deaktivieren

Das Ablaufverfolgungsflag 8744 für den Operator Nested Loops Vorauslesen deaktiviert. Falsche Verwendung dieses Ablaufverfolgungsflags kann SQL Server Pläne ausführt, die Operator Nested Loops enthalten zusätzliche physische Lesevorgänge verursachen. Weitere Informationen zu den Nested Loops -Operator finden Sie unter das Thema "Logische und physische Operatoren Referenz" in SQL Server 2005-Onlinedokumentation.

Sie können das Ablaufverfolgungsflag 8744 beim Start oder in einer Benutzersitzung aktivieren. Wenn Sie das Ablaufverfolgungsflag 8744 beim Systemstart aktivieren, hat das Ablaufverfolgungsflag globalen Gültigkeitsbereich. Wenn Sie das Ablaufverfolgungsflag 8744 in einer Benutzersitzung aktivieren, hat das Ablaufverfolgungsflag Sitzungsbereich.

Informationsquellen

Weitere Informationen zu aktivieren oder zu turn off Ablaufverfolgungsflags und über globale Ablaufverfolgungsflags und Sitzung Ablaufverfolgungsflags finden Sie unter die folgenden Themen in SQL Server 2005-Onlinedokumentation:
  • DBCC TRACEON (Transact-SQL)
  • Ablaufverfolgungsflags (Transact-SQL)
  • DBCC TRACESTATUS (Transact-SQL)
  • Wichtige Änderungen für den Datenbank-Engine-Features in SQL Server 2005

Eigenschaften

Artikel-ID: 920093 - Geändert am: Donnerstag, 1. November 2012 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Standard
Keywords: 
kbexpertiseadvanced kbsql2005engine kbsql2005tsql kbinfo kbmt KB920093 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 920093
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns