DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 977190 - Geändert am: Freitag, 29. Januar 2010 - Version: 1.1

Hotfix-Download ist verfügbar
Hotfix-Downloads anzeigen und anfordern
 
 
Microsoft stellt Updates für Microsoft SQL Server 2008 als downloadbare Datei. Da die Updates kumulativ sind, enthält jede neue Version des Hotfixes, und alle Sicherheitsupdates, die mit früheren SQL Server 2008 geliefert wurden beheben Version.

Auf dieser Seite

Problembeschreibung

Sie haben ein Paket für SQL Server 2008 Integration Services (SSIS 2008). Das Paket enthält eine Datenfluss-Aufgabe. Wenn Sie das Paket auf einem Server, die unter einer Bedingung nicht genügend Arbeitsspeicher verfügbar ist ausführen, tritt eine Zugriffsverletzung auf, und dann der SSIS-2008-Runtime-Prozess abstürzt. Außerdem erhalten Sie Warnungen zu unzureichendem Arbeitsspeicher, die in der SSIS-2008-Anwendungsprotokoll folgendermaßen aussehen:
Ereignisname: OnInformation

Beschreibung: Der Puffer-Manager einen Memory Allocation Aufruf für 10484760 Bytes ist fehlgeschlagen, konnte jedoch nicht, alle Puffer für ungenügenden Arbeitsspeicher beheben auszutauschen. 305 Puffer wurden berücksichtigt und 295 gesperrt wurden. Entweder nicht genügend Arbeitsspeicher verfügbar ist an die Pipeline verfügbar, da nicht genügend installiert sind, von anderen Prozessen wird verwendet wurden oder zu viele Puffer gesperrt sind.

Ereignisname: OnInformation

Beschreibung: Der Puffer-Manager 10485608 Bytes reserviert hat, obwohl die Speicherdruck erkannt wurde und wiederholte Versuche, Puffer austauschen, sind fehlgeschlagen.


Hinweis: Die verschiedenen Runtime Prozesse Ausführen von SSIS-2008-Paketen sind DTExec.exe, DTSHost.exe oder DTSDebugHost.exe. Der Prozess, der das SSIS-2008-Paket ausgeführt wird, ergibt sich die Bedingungen, die das Paket unter. Der DTExec.exe-Prozess ausgeführt wird, übergeordnete Pakete. Der DTSHost.exe-Prozess ausgeführt wird, untergeordneten Pakete. Der DtsDebugHost.exe-Prozess ausgeführt wird, Pakete, die von Business Intelligence Design Studio gedebuggt werden.

Ursache

SSIS 2008 wird benachrichtigt, dass der Server unter einer Bedingung nicht genügend Arbeitsspeicher verfügbar ist. Eine Low-Memory-Bedingung tritt auf, wenn nur 128 Megabyte (MB auf 256 MB Arbeitsspeicher) zur Verfügung stehen. Anschließend beginnt mit der SSIS-2008 Common Language Runtime, Datenfluss Pipeline Puffer in den temporären Ordner auszutauschen, die von der <a0>BufferTempStoragePath</a0>-Eigenschaft angegeben ist.

In der Situation, die im Abschnitt “ Problembeschreibung ” erwähnt wird, werden die Daten in einem Puffer intern in einen Zielpuffer durch eine Transformation kopiert. Beispielsweise werden die Daten in einem Puffer von einer Merge Join-Transformation kopiert. Dieser Vorgang tritt während der Server unter einer Bedingung nicht genügend Arbeitsspeicher verfügbar ist. Die Transformation kann jedoch nicht erkennen, dass plötzlich ausgelagert ein Thread außerhalb der Transformation in den Zielpuffer. Daher wird der Kopiervorgang schlägt fehl, und dann die Zugriffsverletzung verursacht.

Lösung

Dieser Hotfix sperrt den Zielpuffer explizit während eines Kopiervorgangs. Dieses Verhalten verhindert, dass andere Threads den Zielpuffer austauschen während des Kopiervorgangs ausgeführt wird.Die Fehlerbehebung für dieses Problem wurde erstmals im kumulativen Updates 6 für SQL Server 2008 Service Pack 1 veröffentlicht. Weitere Informationen zu diesem kumulativen Updatepaket klicken Sie auf die folgende KB-Artikelnummer:
977443  (http://support.microsoft.com/kb/977443/LN/ ) Kumulatives Updatepaket 6 für SQL Server 2008 Service Pack 1
Hinweis: Da die Builds kumulativ sind, enthält jede neue Update-Version des Hotfixes, und alle Sicherheitsupdates, die mit früheren SQL Server 2008 geliefert wurden beheben Version. Es empfiehlt sich, übernehmen die neueste Version der Updates, die diesen Hotfix enthält. Weitere Informationen finden Sie die folgende KB-Artikelnummer:
970365  (http://support.microsoft.com/kb/970365/LN/ ) SQL Server 2008 erstellt, die nach der Veröffentlichung von SQL Server 2008 Service Pack 1 veröffentlicht wurden
Microsoft SQL Server 2008-Hotfixes sind für bestimmte SQL Server Servicepacks erstellt. Sie müssen einen Hotfix für SQL Server 2008 Service Pack 1 auf eine Installation von SQL Server 2008 Service Pack 1 anwenden. Standardmäßig ist jeder Hotfix, der in einem SQL Server Servicepack zur Verfügung gestellt wird in das nächste Servicepack für SQL Server enthalten.

Abhilfe

Beheben Sie um dieses Problem zu umgehen, die Low-Memory-Bedingung. Die Speichermenge, die dieses Problem auslösen können, variiert für verschiedene Computer. Im Allgemeinen wird dieser Betrag zwischen 32 MB- und 64 MB. Daher wird empfohlen, dass Sie zum Zuweisen von mehr als 64 MB des verfügbaren Speichers an SSIS-2008-Server konfigurieren.

Die Standard-Größe des verfügbaren Speichers, der ein Benachrichtigungsereignis Low-Memory-Ressource signalisiert wechselt. Dieser verfügbare Arbeitsspeicher reicht von 32 MB bis zu 64 MB für jede 4 Gigabyte (GB). Dieses Problem ist schwierig, zu verhindern, da der verfügbare Arbeitsspeicher auf Produktionsservern ausgelastet schwankt. Darüber hinaus kann die Speicher aus verschiedenen Gründen andere verringern. Weitere Informationen zum Arbeitsspeicher Ressource Benachrichtigungen finden Sie auf folgender Website von Microsoft Developer Network (MSDN):
Function that creates memory resource notification objects (http://msdn.microsoft.com/en-us/library/aa366541(VS.85).aspx)
Um die Häufigkeit, mit der dieses Problem zu verringern, verwenden Sie eine der folgenden Methoden.

Methode 1

Fügen Sie mehr physikalischen Speicher auf dem Computer.

Methode 2

Führen Sie das SSIS-2008-Paket auf einem Computer, auf dem eine Instanz von SQL Server nicht ausgeführt wird.

Methode 3

Wenn Sie das SSIS-2008-Paket ausführen, legen Sie die Option maximalen Serverspeicher für die Instanz von SQL Server 2008 auf einen niedrigeren Wert fest. Dieses Verhalten erhöht die verfügbaren Arbeitsspeicher.

Methode 4

Beenden Sie Anwendungen, die viel Speicher, beanspruchen Wenn Sie das SSIS-2008-Paket ausführen, das Datenfluss Aufgaben enthält.

Methode 5

Führen Sie das SSIS-2008-Paket und die Datenfluss-Aufgaben in Reihe anstelle von parallel zur Speicherauslastung verringern.


Methode 6

Verwenden Sie die Methode, die beschrieben wird im Unterabschnitt "So wird 's gemacht: Überwachen der Speicherauslastung für SSIS-" des Abschnitts "Weitere Informationen", um die Low-Memory-Bedingung zu beheben. Optimieren Sie Speicherverwendung für SSIS 2008 dann.

Status

Microsoft hat bestätigt, dass dies ein Problem in der Microsoft-Produkten handelt, die im Abschnitt "Beziehen sich auf" aufgeführt sind.

Weitere Informationen

Überwachen der Speicherauslastung für SSIS

Überwachen des Arbeitsspeichers zum Messen der Spitzenauslastung für verschiedene SQL Server Integration Services-Laufzeit-Prozesse maximale Speichernutzung berechnen

Überwachen Sie die maximale Speichernutzung der verschiedenen SQL Server Integration Services (SSIS) zur Laufzeit Prozesse mithilfe der <a0>Private Bytes Zähler, der der Prozess im Systemmonitor-Objekt. Beispiele für SSIS-Laufzeit-Prozesse sind die DTExec.exe und DTSHost.exe-Prozess.

Wenn die SSIS-Pakete ausgeführt werden, finden Sie den maximalen Wert für die Private Bytes (Leistungsindikator). Wenn mehrere Pakete gleichzeitig ausführen, addieren Sie den größten Wert aller Prozesse, die ausgeführt werden, um den maximalen Wert für die Speichernutzung zu erhalten.

Überwachen von externe Prozessen Spitzen und Valleys suchen

Überwachen Sie die maximale Speichernutzung von Prozessen außerhalb von SQL Server-Dienst und der SSIS-Dienst mithilfe der Privaten Bytes Zähler, der der Prozess im Systemmonitor-Objekt. Suchen Sie nach Verwendung Spitzenzeiten, die verfügbare Arbeitsspeicher für SSIS-verringern können. Sind z. B. Spitzenzeiten auf, wenn mehrere Benutzer Remote Desktop Protocol (RDP), verwenden um eine Verbindung zum Server herstellen oder backup-Software ausgeführt wird.

Überwachen von SQL Server-Arbeitsspeicherverwendung Spitzen und Valleys suchen

Wenn die Meldung "Using gesperrt Seiten für den Pufferpool verwendet." nicht in die aktuelle Fehlerprotokolldatei, Private Bytes Leistungsindikator ist für der sqlservr.exe Prozess hinweisen kann, wie viel Arbeitsspeicher von SQL Server-Dienste genutzt wird.

Wenn die Meldung "Using gesperrt Seiten für den Pufferpool verwendet." in die aktuelle Fehlerprotokolldatei enthalten ist, verwenden Sie den Serverspeicher gesamt (KB) der Zähler der SQL Server: Speicher-Manager Leistungsobjekt zum Messen der Speicherauslastung von SQL Server-Pufferpools. Darüber hinaus können Sie die Privaten Bytes Zähler für den Prozess sqlservr.exe, um die Arbeitsspeicherreservierungen außerhalb des Pufferpools (MemToLeave) zu suchen. Die Summe der Wert des Leistungsindikators Total Server Memory (KB) und die MemToLeave-Wert ist eine gute Schätzung für die Gesamtgröße des Speichers, der SQL Server verwendet.

Der Systemmonitor und Task-Manager anzeigen nicht im Speicher, der durch diesen Pool Pufferseiten verbraucht wird, wenn eine der folgenden Bedingungen erfüllt ist:
  • Das Startkonto des SQL Server-Dienstes wird das Benutzerrecht Lock Pages in Memory zugewiesen.
  • Die AWE-Speicher aktiviert ist.
Hinweis: Wenn eine dieser Bedingungen zutrifft wird, der Private Bytes-Leistungsindikator für der sqlservr.exe Prozess angeben sollten wie viel Arbeitsspeicher in SQL Server-Dienste für verschiedene SQL Server-Instanzen verwendet wird.

Überwachen Sie den Mindestwert des verfügbaren Speichers in Windows

Überwachen, wie viel Speicher in Windows verfügbar ist, verwenden Sie eine der folgenden Methoden:
  • Verwenden Sie die Verfügbaren MBytes Leistungsindikator im Systemmonitor, um anzugeben, wie viel Speicher verfügbar ist.
  • Anzeigen der Physische Speicher MB – frei auf der Registerkarte Systemleistung des Task-Manager-Wert.

    Hinweis: In einigen Betriebssystemen Physical Memory MB – frei Wert als der Physische Speicher (. KB) – verfügbare Wert gekennzeichnet ist.

Informationsquellen

Informationen zum inkrementellen Dienstmodell für SQL Server klicken Sie auf die folgende KB-Artikelnummer:
935897  (http://support.microsoft.com/kb/935897/ ) Ein inkrementelles Dienstmodell ist vom SQL Server-Team zum Übermitteln von Hotfixes für gemeldete Probleme verfügbar


Weitere Informationen zum Benennungsschema für SQL Server-Updates finden Sie die folgende KB-Artikelnummer:
822499  (http://support.microsoft.com/kb/822499/ ) Neues Benennungsschema für Softwareupdate-Pakete von Microsoft SQL Server


Weitere Informationen zur Terminologie für Softwareupdates finden Sie die folgende KB-Artikelnummer:
824684  (http://support.microsoft.com/kb/824684/ ) Erläuterung von Standardbegriffen bei Microsoft Softwareupdates

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Workgroup
Keywords: 
kbmt kbexpertiseadvanced kbfix kbsurveynew kbqfe kbhotfixserver KB977190 KbMtde
Maschinell übersetzter ArtikelMaschinell ü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: 977190  (http://support.microsoft.com/kb/977190/en-us/ )
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.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store