Verwendung von DBCC MEMORYSTATUS-Befehl zum Überwachen der Speicherauslastung auf SQL Server 2005

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 907877 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt die Ausgabe des Befehls DBCC MEMORYSTATUS. Dieser Befehl wird häufig verwendet, um Problembehandlung im Microsoft SQL Server-Speicher-Verbrauch.

Dieser Artikel beschreibt die Elemente der Ausgabe für Speicher-Manager, für die Zusammenfassung der Speicherverwendung, Aggregatfunktionen Speicher Informationen, die Puffer Verteilung Informationen, die Puffer-Pool-Informationen und für die Prozedur-Cache-Informationen. Außerdem werden beschrieben die Ausgabe zu globalen Speicher-Objekten, zu Speicher-Objekten Abfrage, zur Optimierung und über Speicher Maklern.

EINFÜHRUNG

Der Befehl DBCC MEMORYSTATUS bietet einen Snapshot von den aktuellen Speicher Status von Microsoft SQL Server. Sie können die Ausgabe dieses Befehls um Arbeitsspeicher Verbrauch in SQL Server Problemen oder bestimmte mangelndem Speicher Problembehandlung verwenden. (Viele mangelndem Speicher Fehler Drucken automatisch dieser Ausgabe im Fehlerprotokoll.) Microsoft Product Support Services fordert möglicherweise auch Sie diesen Befehl bei einem bestimmten gebührenpflichtigen Supportvorfall ausführen, wenn einen Fehler auftritt, der wenig Arbeitsspeicher zugeordnet werden kann.

Hinweis: Systemmonitor (PerfMon) und Task-Manager berücksichtigen für den Speicher ordnungsgemäß nicht wenn AWE (Address Windowing Extentions) Unterstützung aktiviert ist.

Dieser Artikel beschreibt einige der Daten, die Sie aus der Ausgabe des Befehls DBCC MEMORYSTATUS beziehen können. Mehrere Abschnitte dieses Artikels enthalten proprietäre Implementierungsdetails, die hier nicht erläutert werden. Microsoft Product Support Services nicht beantworten alle Fragen oder bieten weitere Informationen über die Bedeutung der bestimmte Leistungsindikatoren über Informationen, die in diesem Artikel bereitgestellt wird.

Weitere Informationen

wichtig Der Befehl DBCC MEMORYSTATUS sollte verwendet werden soll ein Diagnosetool für die Microsoft Product Support Services. Das Format der Ausgabe und die Detailebene, die bereitgestellt werden können zwischen Servicepacks und Produktversionen geändert werden. Die von DBCC MEMORYSTATUS-Befehl bereitgestellte Funktionalität kann durch einen anderen Mechanismus in späteren Produktversionen ersetzt werden. Daher kann in späteren Produktversionen mit diesem Befehl nicht mehr. Keine weiteren Warnungen werden vorgenommen, bevor dieser Befehl geändert oder gelöscht wird. Daher können Anwendungen, die diesen Befehl ohne Warnung unterbrochen werden.

Die Ausgabe des Befehls DBCC MEMORYSTATUS hat sich gegenüber früheren Versionen von SQL Server geändert. Die Ausgabe enthält nun mehrere Abschnitte, die in früheren Versionen nicht verfügbar waren.

Speicher-Manager

Der erste Abschnitt von der Ausgabe ist Speicher-Manager. Dieser Abschnitt zeigt allgemeine Speicherbedarf von SQL Server.
   Memory Manager                 KB 
   ------------------------------ --------------------
   VM Reserved                    1761400
   VM Committed                   1663556
   AWE Allocated                  0
   Reserved Memory                1024
   Reserved Memory In Use         0

   (5 row(s) affected)
Die Elemente in diesem Abschnitt sind die folgenden:
  • VM reserviert : Dieser Wert zeigt den gesamten Betrag des virtuellen Adressraums (VAS), die SQL Server reserviert hat.
  • VM-zugesicherte : Dieser Wert zeigt den gesamten Betrag des VAS, die SQL Server übergeben wurde. VAS, die ein Commit ausgeführt wurde physischen Speicher zugeordnet.
  • AWE zugeordnete : Dieser Wert zeigt den gesamten Arbeitsspeicher, über den AWE-Mechanismus für die 32-Bit-Version von SQL Server reserviert ist. Oder dieser Wert zeigt die Gesamtmenge an Speicher, die Seiten gesperrt auf der 64-Bit-Version des Produkts zu belegen.
  • Reservierter Speicher : Dieser Wert zeigt den Speicher, der für die dedizierte Administratorverbindung (DAC) reserviert ist.
  • Reservierter Speicher verwendet : Dieser Wert zeigt die reservierte Speicher, verwendet werden wird.

Zusammenfassung der Speichernutzung

Der Speichermanager Abschnitt folgt eine Zusammenfassung der Speicherverwendung für jeden Knoten Speicher. In einem System Non-Uniform Memory Access (NUMA) aktiviert werden ein entsprechenden Speicher-Knoten-Eintrag für jeden Hardware NUMA-Knoten. In einem SMP-System wird ein einzelner Speicher Knoten Eintrag sein.

Hinweis: Der Speicher Knoten-ID nicht den Hardware-Knoten-ID entsprechen möglicherweise
   Memory node Id = 0             KB 
   ------------------------------ --------------------
   VM Reserved                    1757304
   VM Committed                   1659612
   AWE Allocated                  0
   MultiPage Allocator            10760
   SinglePage Allocator           73832

   (5 row(s) affected)
Hinweis diese Werte anzeigen den Speicher, der von Threads zugeordnet wird, die auf diesem Knoten NUMA ausgeführt werden. Diese Werte sind nicht im Speicher, der lokalen NUMA-Knoten ist.

Die Elemente in diesem Abschnitt sind die folgenden:
  • VM reserviert : Dieser Wert zeigt VAS, die von Threads reserviert ist, die auf diesem Knoten ausgeführt werden.
  • VM-zugesicherte : Dieser Wert zeigt VAS, die von Threads übergeben wird, die auf diesem Knoten ausgeführt werden.
  • AWE zugeordnete : Dieser Wert zeigt den Speicher, der über den AWE-Mechanismus für die 32-Bit-Version des Produkts zugeordnet wird. Oder dieser Wert zeigt die allgemeine Speichermenge in gesperrten Seiten auf der 64-Bit-Version des Produkts verwendet wird.

    In einem NUMA-fähige System kann dieser Wert nicht korrekt oder negativ sein. AWE zugeordnete Gesamtwert im Abschnitt "Speicher-Manager ist jedoch einen korrekten Wert. Um Speicher zu verfolgen, der von einzelnen NUMA-Knoten zugeordnet ist, verwenden Sie SQL Server: Puffer-Knoten Leistungsobjekte. (Weitere Informationen, finden Sie unter SQL Server-Onlinedokumentation .)
  • MultiPage-Zuordnung : Dieser Wert zeigt den Speicher, der über die Multipage-Zuweisung von Threads zugeordnet wird, die auf diesem Knoten ausgeführt werden. Dieser Speicher stammt von außerhalb des Pufferpools befinden.
  • SinglePage-Zuordnung : Dieser Wert zeigt den Speicher, der über die einseitige Zuweisung von Threads zugeordnet wird, die auf diesem Knoten ausgeführt werden. Dieser Speicher wird aus dem Pufferpool gestohlen.
Hinweis: Die Summen VM reservierte Werte und die VM zugesicherte Werte auf allen Speicher Knoten werden etwas kleiner als die entsprechenden Werte, die im Abschnitt "Speicher-Manager gemeldet werden.

Aggregatfunktionen Speicher

Der nächste Abschnitt enthält die Aggregatfunktionen Speicherinformationen für jeden Sachbearbeiter und für jeden NUMA-Knoten. Für ein System NUMA-fähigen möglicherweise Ausgabe angezeigt werden, die der folgenden ähnlich ist.

Hinweis: Die folgende Tabelle enthält nur einen Teil der Ausgabe.
   MEMORYCLERK_SQLGENERAL (node 0)                                  KB 
   ---------------------------------------------------------------- --------------------
   VM Reserved                                                      0
   VM Committed                                                     0
   AWE Allocated                                                    0
   SM Reserved                                                      0
   SM Commited                                                      0
   SinglePage Allocator                                             592
   MultiPage Allocator                                              2160

   (7 row(s) affected)

   MEMORYCLERK_SQLGENERAL (node 1)                                  KB 
   ---------------------------------------------------------------- --------------------
   VM Reserved                                                      0
   VM Committed                                                     0
   AWE Allocated                                                    0
   SM Reserved                                                      0
   SM Commited                                                      0
   SinglePage Allocator                                             136
   MultiPage Allocator                                              0

   (7 row(s) affected)

   MEMORYCLERK_SQLGENERAL (Total)                                   KB 
   ---------------------------------------------------------------- --------------------
   VM Reserved                                                      0
   VM Committed                                                     0
   AWE Allocated                                                    0
   SM Reserved                                                      0
   SM Commited                                                      0
   SinglePage Allocator                                             728
   MultiPage Allocator                                              2160

   (7 row(s) affected)
Hinweis: Diese Knoten-IDs entsprechen die NUMA Knoten Konfiguration des Computers, auf dem SQL Server ausgeführt wird. Der Knoten IDs enthalten mögliche Software NUMA-Knoten, die von Hardware NUMA-Knoten oder über eine SMP-System definiert sind. Um Zuordnung zwischen Knoten IDs und CPUs für jeden Knoten zu ermitteln, zeigen Sie Informationen zur Ereignis-ID 17152. Dieses Ereignis wird im Anwendungsprotokoll in der Ereignisanzeige protokolliert, wenn Sie SQL Server starten.

Bei einem SMP-System finden Sie nur einen Abschnitt für jeden Sachbearbeiter. Dieser Abschnitt ist ähnlich der folgenden.
   MEMORYCLERK_SQLGENERAL (Total)                                   KB 
   ---------------------------------------------------------------- --------------------
   VM Reserved                                                      0
   VM Committed                                                     0
   AWE Allocated                                                    0
   SM Reserved                                                      0
   SM Commited                                                      0
   SinglePage Allocator                                             768
   MultiPage Allocator                                              2160

   (7 row(s) affected)
Andere Informationen in diesen Abschnitten werden über freigegebenen Speicher:
  • Service reserviert : Dieser Wert zeigt VAS, die von allen Clerks dieser Art reserviert ist, die die Speicherbilddateien API verwenden. Diese API ist auch bekannt als shared Memory .
  • Service zugesicherte : Dieser Wert zeigt VAS, die von allen Clerks dieser Art belegt wird, die Memory-mapped-Dateien-API verwenden.
Sie können zusammenfassende Informationen für jeden Sachbearbeiter-Typ für alle Speicher-Knoten mithilfe der sys.dm_os_memory_clerks Verwaltung dynamischer Ansicht (DMV) abrufen. Führen Sie hierzu die folgende Abfrage:
select 
	type,
	sum(virtual_memory_reserved_kb) as [VM Reserved],
	sum(virtual_memory_committed_kb) as [VM Committed],
	sum(awe_allocated_kb) as [AWE Allocated],
	sum(shared_memory_reserved_kb) as [SM Reserved], 
	sum(shared_memory_committed_kb) as [SM Committed],
	sum(multi_pages_kb) as [MultiPage Allocator],
	sum(single_pages_kb) as [SinlgePage Allocator]
from 
	sys.dm_os_memory_clerks 
group by type

Puffer-Verteilung

Im nächste Abschnitt zeigt die Verteilung von 8 Kilobyte (KB) Puffern im Pufferpool.
   Buffer Distribution            Buffers
   ------------------------------ -----------
   Stolen                         553
   Free                           103
   Cached                         161
   Database (clean)               1353
   Database (dirty)               38
   I/O                            0
   Latched                        0

   (7 row(s) affected)
Die Elemente in diesem Abschnitt sind die folgenden:
  • Stolen : Stolen Arbeitsspeicher beschreibt 8-KB-Puffer, die der Server für verschiedene Zwecke verwendet. Dieser Puffer dienen als generische Speicher Speicherzuordnungen. Andere Komponenten des Servers verwenden diese Puffer, um interne Datenstrukturen zu speichern. Der Prozess für verzögertes Schreiben darf nicht leeren Puffer aus dem Pufferpool Stolen.
  • frei : Dieser Wert zeigt übergebenen Puffer, die derzeit nicht verwendet werden. Dieser Puffer sind für Daten verfügbar. Oder andere Komponenten möglicherweise diese Puffer anfordern und markieren Sie diese Puffer als Stolen .
  • Cache : Dieser Wert zeigt die Puffer, die für verschiedene Caches verwendet werden.
  • Datenbank (clean) : Dieser Wert zeigt die Puffer, die Inhalt der Datenbank aufweisen und nicht geändert wurden.
  • Datenbank (geändert) : Dieser Wert zeigt die Puffer, die Inhalt der Datenbank und geändert wurden. Dieser Puffer enthalten Änderungen, die geleert werden müssen auf dem Datenträger.
  • e/A : Dieser Wert zeigt die Puffer, die auf eine ausstehende e/A-Operation warten.
  • Latched : Dieser Wert zeigt die Puffer aktiviert . Ein Puffer ist aktiviert, wenn ein Thread beim Lesen oder ändern den Inhalt einer Seite. Ein Puffer ist auch beim Lesen der Seite vom Datenträger aktiviert oder auf den Datenträger geschrieben. Wird ein Latch verwendet, um physischen Konsistenz der Daten in der Seite zu verwalten, während es gerade gelesen oder geändert. Eine Sperre wird zum logischen und Transaktionspublikationen Konsistenz zu gewährleisten.

Puffer-Pool-details

Sie erhalten ausführliche Informationen über Puffer-Pool-Puffer für Datenbankseiten mithilfe von sys.dm_os_buffer_descriptors DMV. Und Sie können detaillierte Informationen über Pool Pufferseiten, die mithilfe von sys.dm_os_memory_clerks DMV für sonstige Serverzwecke verwendet verwendet werden.

Im nächste Abschnitt listet Detailinformationen zu den Pufferpool sowie zusätzliche Informationen.
   Buffer Counts                  Buffers
   ------------------------------ --------------------
   Committed                      1064
   Target                         17551
   Hashed                         345
   Stolen Potential               121857
   External Reservation           645
   Min Free                       64
   Visible                        17551
   Available Paging File          451997

   (8 row(s) affected)
Die Elemente in diesem Abschnitt sind die folgenden:
  • zugesichert : Dieser Wert zeigt die gesamten Puffer, die ein Commit ausgeführt werden. Puffer, die ein Commit ausgeführt haben physischen Speicher zugeordnet werden. Der Wert zugesichert ist die aktuelle Größe des Pufferpools. Dieser Wert umfasst den physischen Speicher, der reserviert wird, wenn AWE-Unterstützung aktiviert ist.
  • Ziel : Dieser Wert zeigt die Zielgröße des Pufferpools. Wenn der Ziel -Wert größer als der Wert zugesichert ist, wächst der Pufferpool. Wenn der Ziel -Wert kleiner als der Wert zugesichert ist, wird der Pufferpool verkleinern.
  • Hashed : Dieser Wert zeigt die Datenseiten und Indexseiten, die im Pufferpool gespeichert sind.
  • Mögliche gestohlen : Dieser Wert zeigt die maximalen Seiten, die aus dem Pufferpool gestohlen werden können.
  • ExternalReservation : Dieser Wert zeigt die Seiten, die für Abfragen reserviert wurden, die einen Sortiervorgang oder einer Hashoperation ausführen wird. Diese Seiten wurden noch nicht gestohlen.
  • Min. freier : Dieser Wert zeigt die Seiten, die der Pufferpool versucht, auf die Freiliste haben.
  • sichtbar : Dieser Wert zeigt die Puffer, die gleichzeitig angezeigt werden. Dieser Puffer können direkt zur gleichen Zeit zugegriffen werden. Dieser Wert entspricht normalerweise der gesamte Puffer. Allerdings Wenn AWE-Unterstützung aktiviert ist, kann dieser Wert sein kleiner als die gesamten Puffer.
  • Auslagerungsdatei zur Verfügung : Dieser Wert zeigt die ein Commit ausgeführt werden verfügbare Arbeitsspeicher. Dieser Wert wird als die Anzahl der 8-KB-Puffer ausgedrückt. Weitere Informationen finden Sie "GlobalMemoryStatusEx-Funktion" in der Windows-API-Dokumentation.

Prozedurcache

Der nächste Abschnitt beschreibt den Aufbau der Prozedur-Cache.
   Procedure Cache                Value
   ------------------------------ -----------
   TotalProcs                     4
   TotalPages                     25
   InUsePages                     0

   (3 row(s) affected)
die Elemente in diesem Abschnitt sind die folgenden:
  • TotalProcs : Dieser Wert zeigt die Gesamtanzahl zwischengespeicherte Objekte, die derzeit dem Prozedurcache werden. Dieser Wert wird die Einträge in der DMV sys.dm_exec_cached_plans entsprechen.

    Hinweis: Aufgrund der dynamischen Natur dieser Informationen möglicherweise die Übereinstimmung nicht genau. Können Sie PerfMon Überwachen der SQL Server: Cache soll -Objekt und die sys.dm_exec_cached_plans DMV ausführliche Informationen über den Typ der zwischengespeicherten Objekte wie Trigger, Prozeduren und ad-hoc-Objekte.
  • TotalPages : Dieser Wert zeigt die kumulativen Seiten sein, müssen alle zwischengespeicherten Objekte in dem Prozedur-Cache zu speichern.
  • InUsePages : Dieser Wert zeigt die Seiten im Prozedurcache, die Prozeduren angehören, die momentan ausgeführt werden. Diese Seiten können nicht verworfen werden.

Globale Speicherobjekte

Im nächste Abschnitt enthält Informationen zu globalen Speicher-Objekten. Dieser Abschnitt enthält auch Informationen, wie viel Speicher globalen Speicher verwenden Objekte.
   Global Memory Objects          Buffers
   ------------------------------ --------------------
   Resource                       126
   Locks                          85
   XDES                           10
   SETLS                          2
   SE Dataset Allocators          4
   SubpDesc Allocators            2
   SE SchemaManager               44
   SQLCache                       41
   Replication                    2
   ServerGlobal                   25
   XP Global                      2
   SortTables                     2

   (12 row(s) affected)
Die Elemente in diesem Abschnitt sind die folgenden:
  • Ressource : Dieser Wert zeigt den Speicher, die das Resource -Objekt verwendet. Das Resource -Objekt wird von dem Speichermodul und für verschiedene serverweite Strukturen verwendet.
  • sperrt : Dieser Wert zeigt dem Speicher, Sperren-Manager verwendet.
  • XDES : Dieser Wert zeigt dem Speicher, Transaktions-Manager verwendet.
  • SETLS : Dieser Wert zeigt den Speicher, die Struktur Storage Engine-spezifische pro Thread zugewiesen werden, die lokalen Threadspeicher verwendet verwendet wird.
  • SE Dataset Allocators : Dieser Wert zeigt den Speicher, die Strukturen für Einstellung Tabellenzugriff über die Zugriffsmethoden zuweisen verwendet wird.
  • SubpDesc Allocators : Dieser Wert zeigt den Speicher, die zum Verwalten von Unterprozessen für parallele Abfragen, Sicherungsvorgänge, Wiederherstellung, Datenbankoperationen, Dateioperationen, Spiegelung und asynchrone Cursor verwendet wird. Diese Unterprozesse werden auch bezeichnet als parallelen Prozessen .
  • SE SchemaManager : Dieser Wert zeigt den Speicher, der Schema-Manager, verwendet um Storage Engine-spezifische Metadaten zu speichern.
  • SQLCache : Dieser Wert zeigt den Speicher, um den Text von ad-hoc-Anweisungen und vorbereitete Anweisungen Speichern verwendet wird.
  • Replikation : Dieser Wert zeigt den Speicher, die der Server für interne Replikation Subsysteme verwendet.
  • ServerGlobal : Dieser Wert zeigt das globale Server Speicher Objekt, das allgemein durch verschiedene Subsysteme verwendet wird.
  • XP Global : Dieser Wert zeigt den Speicher, die erweiterte gespeicherte Prozeduren verwenden.
  • Sortieren von Tabellen : Dieser Wert zeigt den Speicher, Sortieren von Tabellen verwenden.

Abfrage-Speicherobjekte

Der nächste Abschnitt beschreibt die Abfrage Speicher gewähren Informationen. Dieser Abschnitt enthält einen Snapshot von der Abfrage-Speicherauslastung. Query memory is also known as workspace memory.
   Query Memory Objects           Value
   ------------------------------ -----------
   Grants                         0
   Waiting                        0
   Available (Buffers)            14820
   Maximum (Buffers)              14820
   Limit                          10880
   Next Request                   0
   Waiting For                    0
   Cost                           0
   Timeout                        0
   Wait Time                      0
   Last Target                    11520

   (11 row(s) affected)

   Small Query Memory Objects     Value       
   ------------------------------ ----------- 
   Grants                         0
   Waiting                        0
   Available (Buffers)            640
   Maximum (Buffers)              640
   Limit                          640

   (5 row(s) affected)
If the size and the cost of a query satisfy ?small? query memory thresholds, the query is put in a small query queue. Dieses Verhalten wird verhindert, dass kleinere Abfragen hinter größeren Abfragen, die bereits in der Warteschlange sind verzögert wird.

Die Elemente in diesem Abschnitt sind die folgenden:
  • gewährt : Dieser Wert zeigt die ausgeführten Abfragen, die Speicherzuweisungen haben.
  • warten : Dieser Wert zeigt die Abfragen, die darauf warten, Speicherzuweisungen erhalten.
  • verfügbar : Dieser Wert zeigt die Puffer, auf Abfragen für die Verwendung als Arbeitsbereich hash verfügbar sind und als Arbeitsbereich sortieren. Der Wert Verfügbare wird regelmäßig aktualisiert.
  • Maximale : Dieser Wert zeigt die Puffer der insgesamt für alle Abfragen für die Verwendung als Arbeitsbereich erteilt werden können.
  • Limit : Dieser Wert zeigt das Ausführungsziel Abfrage für die Warteschlange große Abfrage. Dieser Wert unterscheidet sich von den Maximalwert (Puffer) , da den Maximalwert (Puffer) nicht aktualisiert wird, bis die Änderung in der Warteschlange.
  • Nächsten Anforderung : Dieser Wert zeigt die Arbeitsspeichergröße Anforderung in Puffern für die nächste wartende Abfrage.
  • Warten für : Dieser Wert zeigt den Betrag des Speicher, der die Abfrage ausführen, der Wert Weiter Anforderung bezieht, verfügbar sein muss. Der Wert Warten für ist der Nächste Anforderung multipliziert Wachstumsspielraum Faktor. Dieser Wert wird effektiv sichergestellt, dass eine bestimmte Menge an Arbeitsspeicher verfügbar sind, wenn die nächste wartende Abfrage ausgeführt wird.
  • Kosten : Dieser Wert zeigt die Kosten der nächste wartende Abfrage.
  • Zeitüberschreitung : Dieser Wert zeigt das Timeout in Sekunden, für die nächste wartende Abfrage.
  • Zeit warten : Zeigt die diesem Wert die verstrichene Zeit in Millisekunden an seit die nächste wartende Abfrage in der Warteschlange versetzt wurde.
  • Letzte Ziel : Dieser Wert zeigt die allgemeine Speichergrenze für die Ausführung einer Abfrage. Dieser Wert ist die kombinierte Beschränkung für die Warteschlange große Abfrage und der kleinen Abfrage Warteschlange.

Optimierung

The next section is a summary of the users who are trying to optimize queries at the same time.
   Optimization Queue             Value
   ------------------------------ --------------------
   Overall Memory                 156672000
   Last Notification              1
   Timeout                        6
   Early Termination Factor       5

   (4 row(s) affected)

   Small Gateway                  Value
   ------------------------------ --------------------
   Configured Units               8
   Available Units                8
   Acquires                       0
   Waiters                        0
   Threshold Factor               250000
   Threshold                      250000

   (6 row(s) affected)

   Medium Gateway                 Value
   ------------------------------ --------------------
   Configured Units               2
   Available Units                2
   Acquires                       0
   Waiters                        0
   Threshold Factor               12

   (5 row(s) affected)

   Big Gateway                    Value
   ------------------------------ --------------------
   Configured Units               1
   Available Units                1
   Acquires                       0
   Waiters                        0
   Threshold Factor               8

   (5 row(s) affected)
Queries are submitted to the server for compilation. Der Kompilierungsprozess umfasst das Analysieren, Algebraization und Optimierung. Abfragen werden auf Grundlage der der Speicher, der jede Abfrage während der Kompilierung belegt klassifiziert.

Hinweis: Dieser Betrag ist nicht den Speicher enthalten, der zum Ausführen der Abfrage erforderlich sind.

Wenn eine Abfrage gestartet wird, besteht keine Begrenzung auf wie viele Abfragen kompiliert werden können. Wie der Arbeitsspeicherverbrauch steigt und einen Schwellenwert erreicht, muss die Abfrage ein Gateway zu weiterhin übergeben. Nach jedes Gateway ist eine stufenweise Abnahme begrenzt der gleichzeitig kompilierter Abfragen. Die Größe des einzelnen Gateways hängt von der Plattform und die Auslastung. Gateway-Größen werden ausgewählt, um Skalierbarkeit und Durchsatz zu maximieren.

Wenn die Abfrage kann kein Gateway übergeben, wird die Abfrage warten, bis Arbeitsspeicher verfügbar ist. Oder die Abfrage einen Timeoutfehler (Fehler 8628) zurück. Darüber hinaus kann die Abfrage keinen Gateway erwerben, wenn der Benutzer die Abfrage abbricht oder wenn ein Deadlock erkannt wird. Wenn eine Abfrage mehrere Gateways übergibt, wird die Abfrage nicht die kleinere Gateways freigegeben, bis zum Abschluss des Kompilierungsprozesses.

Dieses Verhalten kann nur wenige speicherintensive Kompilierungen zur gleichen Zeit auftreten. Darüber hinaus wird dieses Verhalten Durchsatz für kleinere Abfragen maximiert.

Speicher Maklern

In den nächsten drei Abschnitten anzeigen Informationen zum Arbeitsspeicher Maklern, Arbeitsspeicher, gestohlene Speicher und reservierte Speicher zwischengespeichert. Informationen, die diese Abschnitte kann nur für interne Diagnose verwendet werden. Daher wird diese Informationen hier nicht beschrieben.
   MEMORYBROKER_FOR_CACHE           Value
   -------------------------------- --------------------
   Allocations                      1843
   Rate                             0
   Target Allocations               1843
   Future Allocations               0
   Last Notification                1

   (4 row(s) affected)

   MEMORYBROKER_FOR_STEAL           Value
   -------------------------------- --------------------
   Allocations                      380
   Rate                             0
   Target Allocations               1195
   Future Allocations               0
   Last Notification                1

   (4 row(s) affected)

   MEMORYBROKER_FOR_RESERVE         Value
   -------------------------------- --------------------
   Allocations                      0
   Rate                             0
   Target Allocations               1195
   Future Allocations               0
   Last Notification                1

   (4 row(s) affected)

Eigenschaften

Artikel-ID: 907877 - Geändert am: Dienstag, 20. November 2007 - Version: 1.3
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
Keywords: 
kbmt kbsql2005engine kbtshoot kbinfo KB907877 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: 907877
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

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com