KB2671318-Fix: die erste Ausführung der xp_cmdshell gespeicherten Prozedur wird erst abgeschlossen, wenn die letzte Ausführung in SQL Server 2012 abgeschlossen ist.

Microsoft vertreibt Microsoft SQL Server 2012-Fixes in einer herunterladbaren Datei. Da die Fixes kumulativ sind, enthält jede neue Version alle Hotfixes und alle Sicherheitsupdates, die in der vorherigen SQL Server 2012-Update Version enthalten waren.

Problembeschreibung

Es wird davon ausgegangen, dass Sie viele xp_cmdshell gespeicherten Prozeduren gleichzeitig in mehreren Sitzungen in Microsoft SQL Server 2012 ausführen. In diesem Fall wird die erste Ausführung der xp_cmdshell gespeicherten Prozedur erst abgeschlossen, wenn die letzte Ausführung abgeschlossen ist.

Ursache

Dieses Problem tritt auf, weil ein Handle von den Prozessen geerbt wird, die geöffnet werden, wenn Sie xp_cmdshell gespeicherte Prozeduren zur gleichen Zeit ausführen. Die CreateProcess -API erfordert die Vererbung von handle, um die Standardausgabe und die Fehlermeldung umzuleiten. Wenn mehrere Ausführungen der xp_cmdshell gespeicherten Prozedur zur gleichen Zeit ausgeführt werden, können neu geöffnete Prozesse das Handle von vorhandenen Prozessen erben. Die xp_cmdshell gespeicherte Prozedur wartet jedoch darauf, dass das Handle durch alle geöffneten Prozesse geschlossen wird. Wenn also mehrere Prozesse das Handle erben, müssen alle xp_cmdshell -Ausführungen warten, bis der Handle vom am längsten ausgeführten Prozess geschlossen wird.

Fehlerbehebung

Um dieses Problem zu beheben, wenden Sie das folgende kumulative Update an. Mit diesem Update werden STARTUPINFOEX-Optionen für CreateProcess-API hinzugefügt, die die Handle-Vererbung für crossprozess verhindern.

Informationen zum kumulativen Update

Kumulatives Updatepaket 1 für SQL Server 2012 Service Pack 1

Die Fehlerbehebung für dieses Problem wurde zuerst in Kumulatives Update 1 veröffentlicht. Wenn Sie weitere Informationen zum beziehen dieses kumulativen Updatepakets für SQL Server 2012 Service Pack 1 erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

2765331 Kumulatives Updatepaket 1 für SQL Server 2012 Service Pack 1Hinweis Da die Builds kumulativ sind, enthält jede neue Fix-Version alle Hotfixes und alle Sicherheitsupdates, die in der vorherigen Version von SQL Server 2012 behoben wurden. Wir empfehlen, dass Sie die neueste Fix-Version anwenden, die diesen Hotfix enthält. Weitere Informationen finden Sie im folgenden Artikel der Microsoft Knowledge Base:

2772858 Die SQL Server 2012-Builds, die nach der Veröffentlichung von SQL Server 2012 Service Pack 1 veröffentlicht wurden

SQL Server 2012

Die Fehlerbehebung für dieses Problem wurde zuerst in Kumulatives Update 4 veröffentlicht. Wenn Sie weitere Informationen zum beziehen dieses kumulativen Updatepakets für SQL Server 2012 benötigen, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

2758687 Kumulatives Updatepaket 4 für SQL Server 2012Hinweis Da die Builds kumulativ sind, enthält jede neue Fix-Version alle Hotfixes und alle Sicherheitsupdates, die in der vorherigen Version von SQL Server 2012 behoben wurden. Wir empfehlen, dass Sie die neueste Fix-Version anwenden, die diesen Hotfix enthält. Weitere Informationen finden Sie im folgenden Artikel der Microsoft Knowledge Base:

2692828 Die SQL Server 2012-Builds, die nach der Veröffentlichung von SQL Server 2012 veröffentlicht wurden

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

Informationsquellen

Weitere Informationen zur CreateProcess-Funktion finden Sie auf der folgenden MSDN-Website:

Allgemeine Informationen zur CreateProcess-FunktionWeitere Informationen zur xp_cmdshell gespeicherten Prozedur finden Sie auf der folgenden MSDN-Website:

Allgemeine Informationen zur xp_cmdshell gespeicherten Prozedur Wenn Sie weitere Informationen zu einem ähnlichen Problem erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

315939 PRB: untergeordnete Elemente erben unbeabsichtigte Handles während des CreateProcess-Aufrufs

Benötigen Sie weitere Hilfe?

Ihre Office-Fähigkeiten erweitern
Schulungen erkunden
Neue Funktionen als Erster erhalten
Microsoft Insider beitreten

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×