Die Verbindung läuft ab, wenn Sie den AlwaysOn-Verfügbarkeitsgruppen-Listener mit dem Parameter MultiSubnetFailover verwenden
Symptome
Wenn Sie versuchen, über einen AlwaysOn-Verfügbarkeitsgruppenlistener von einer Clientanwendung aus eine Verbindung zu Microsoft SQL Server 2012 herzustellen, wird möglicherweise eine Fehlermeldung wegen Zeitüberschreitung bei der Anmeldung angezeigt.
Wenn Sie beispielsweise den Befehl SqlCmd verwenden, wird möglicherweise die folgende Fehlermeldung angezeigt:
Sqlcmd: Fehler: Microsoft SQL Native Client: Anmeldezeitlimit abgelaufen.
[Microsoft][SQL Server Native Client 11.0]Der Anmeldevorgang konnte aufgrund einer Verzögerung beim Öffnen der Serververbindung nicht abgeschlossen werden
Wenn Sie eine auf Microsoft .NET Framework 3.5 oder Microsoft .NET Framework 4.0 basierende Anwendung mithilfe des .NET Framework-Datenanbieters für SQL Server verwenden, wird möglicherweise die folgende Fehlermeldung angezeigt:
Zeitüberschreitung. Der Timeout-Zeitraum ist vor Abschluss des Vorgangs abgelaufen oder der Server antwortet nicht.
bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException-Ausnahme, Boolean breakConnection)
bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
bei System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 Fehler)
bei System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
bei System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
bei System.Data.SqlClient.TdsParser.ConsumePreLoginHandshake(Boolean encrypt, Boolean trustServerCert, Boolean& marsCapable)
at System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean-ignoreSniOpenTimeout, Int64 timerExpire, Boolean-encrypt, Boolean-trustServerCert, Boolean-integratedSecurity, Boolean-withFailover)
at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean discoverSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject, Boolean withFailover)
bei System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean restartedUserInstance, SqlConnection owningObject, SqlConnectionString ConnectionOptions, TimeoutTimer Timeout)
bei System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString ConnectionOptions, String newPassword, Boolean restartedUserInstance)
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity Identity, SqlConnectionString ConnectionOptions, Object ProviderInfo, String NewPassword, SqlConnection OwningObject, Boolean RedirectedUserInstance)
Hinweis Wenn Sie das Anmelde-Timeout auf 30 Sekunden erhöhen, benötigt die Clientanwendung etwa 20 Sekunden, um eine erfolgreiche Verbindung herzustellen.
Diese Symptome treten auf, wenn die folgenden Bedingungen zutreffen:
Ihre Verfügbarkeitsgruppe ist in einem Multi-Subnetz definiert.
Sie haben beim Herstellen der Verbindung den Parameter MultiSubnetFailover angegeben.
Sie verfügen über einen aktiven TDI-Filtertreiber (Transport Driver Interface), der auf der Clientanwendungs-Workstation installiert ist.
Ursache
Dieses Problem tritt auf, weil der Tdx.sys-Treiber die Funktion Closesocket() nicht ordnungsgemäß verarbeitet, wenn die Funktion mitten in einem TCP/IP-Handshake aufgerufen wird.
Auflösung
Hotfix-Informationen
Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll jedoch nur das in diesem Artikel beschriebene Problem beheben. Wenden Sie diesen Hotfix nur auf Systemen an, bei denen das in diesem Artikel beschriebene Problem auftritt. Dieser Hotfix wird möglicherweise weiteren Tests unterzogen. Wenn Sie von diesem Problem nicht schwerwiegend betroffen sind, empfehlen wir Ihnen daher, auf das nächste Software-Update zu warten, das diesen Hotfix enthält.
Wenn der Hotfix zum Download verfügbar ist, finden Sie oben in diesem Knowledge Base-Artikel den Abschnitt „Hotfix-Download verfügbar". Wenn dieser Abschnitt nicht angezeigt wird, wenden Sie sich an den Kundendienst und Support von Microsoft, um den Hotfix zu erhalten.
Hinweis Wenn weitere Probleme auftreten oder eine Fehlerbehebung erforderlich ist, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Für weitere Supportfragen und Probleme, die für diesen speziellen Hotfix nicht in Frage kommen, fallen die üblichen Supportkosten an. Eine vollständige Liste der Microsoft-Kundendienst- und Support-Telefonnummern oder zum Erstellen einer separaten Serviceanfrage finden Sie auf der folgenden Microsoft-Website:
http://support.microsoft.com/contactus/?ws=support Hinweis Im Formular „Hotfix-Download verfügbar" werden die Sprachen angezeigt, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, liegt das daran, dass für diese Sprache kein Hotfix verfügbar ist.
Voraussetzungen
Um diesen Hotfix anzuwenden, müssen Sie Windows 7 SP1 oder Windows Server 2008 R2 SP1 ausführen.
Weitere Informationen zum Erhalten eines Windows 7- oder Windows Server 2008 R2-Service Packs erhalten Sie, wenn Sie auf die folgende Artikelnummer klicken, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
976932 Informationen zum Service Pack 1 für Windows 7 und für Windows Server 2008 R2
Registrierungsinformationen
Um diesen Hotfix anzuwenden, müssen Sie keine Änderungen an der Registrierung vornehmen.
Neustartanforderung
Sie müssen den Computer neu starten, nachdem Sie diesen Hotfix angewendet haben.
Informationen zum Hotfix-Ersatz
Dieser Hotfix ersetzt keinen zuvor veröffentlichten Hotfix.
Die globale Version dieses Hotfixes installiert Dateien mit den in den folgenden Tabellen aufgeführten Attributen. Die Datums- und Uhrzeitangaben für diese Dateien werden in der koordinierten Weltzeit (UTC) angegeben. Die Datums- und Uhrzeitangaben für diese Dateien auf Ihrem lokalen Computer werden in Ihrer Ortszeit zusammen mit Ihrer aktuellen Sommerzeit (DST) angezeigt. Darüber hinaus können sich Datum und Uhrzeit ändern, wenn Sie bestimmte Vorgänge an den Dateien ausführen.
Hinweise zu Dateiinformationen für Windows 7 und Windows Server 2008 R2
Wichtige Windows 7-Hotfixes und Windows Server 2008 R2-Hotfixes sind in denselben Paketen enthalten. Allerdings werden Hotfixes auf der Seite „Hotfix-Anfrage" für beide Betriebssysteme aufgeführt. Um das Hotfix-Paket anzufordern, das für eines oder beide Betriebssysteme gilt, wählen Sie den Hotfix aus, der auf der Seite unter „Windows 7/Windows Server 2008 R2" aufgeführt ist. Sehen Sie sich in Artikeln immer den Abschnitt „Gilt für" an, um das tatsächliche Betriebssystem zu ermitteln, für das jeder Hotfix gilt.
Die Dateien, die für ein bestimmtes Produkt, SR_Level (RTM, SPn) und einen Servicezweig (LDR, GDR) gelten, können durch Untersuchen der Dateiversionsnummern identifiziert werden, wie in der folgenden Tabelle gezeigt:
Ausführung
Produkt
Meilenstein
Servicezweig
6.1.760
1,22xxxWindows 7 und Windows Server 2008 R2
SP1
LDR
Die MANIFEST-Dateien (.manifest) und die MUM-Dateien (.mum), die für jede Umgebung installiert werden, werden im Abschnitt „Zusätzliche Dateiinformationen für Windows 7 und für Windows Server 2008 R2" separat aufgeführt . MUM- und MANIFEST-Dateien sowie die zugehörigen Sicherheitskatalogdateien (.cat) sind für die Aufrechterhaltung des Status der aktualisierten Komponente äußerst wichtig. Die Sicherheitskatalogdateien, deren Attribute nicht aufgeführt sind, sind mit einer digitalen Signatur von Microsoft signiert.
Für alle unterstützten x86-basierten Versionen von Windows 7
Dateiname | Tdx.sys |
Dateiversion | 6.1.7601.22382 |
Dateigröße | 74.752 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 09:17 |
Plattform | x86 |
Für alle unterstützten x64-basierten Versionen von Windows 7 und Windows Server 2008 R2
Dateiname | Tdx.sys |
Dateiversion | 6.1.7601.22382 |
Dateigröße | 118.272 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 09:35 |
Plattform | x64 |
Für alle unterstützten IA-64-basierten Versionen von Windows Server 2008 R2
Dateiname | Tdx.sys |
Dateiversion | 6.1.7601.22382 |
Dateigröße | 236.544 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 09:03 |
Plattform | IA-64 |
Problemumgehung
Um dieses Problem zu umgehen, verwenden Sie eine der folgenden Methoden:
Erhöhen Sie das Anmelde-Timeout Ihrer Anwendung auf 30 Sekunden.
Die TDI-Funktion ist in Windows Vista, Windows Server 2008 oder einer späteren Version von Windows veraltet. Sie können stattdessen die auf der Windows Filtering Platform (WFP) basierenden Treiber verwenden. Wenden Sie sich an den Anbieter des installierten TDI-Filtertreibers, um Informationen zu Upgrades für das Produkt anzufordern, die die neue Windows-Filterplattform implementieren. Aktualisieren Sie das Produkt, wenn es möglich ist.
Ersetzen Sie den TDI durch ein vergleichbares Produkt, das die Windows-Filterplattform implementiert hat.
Legen Sie die RegisterAllProvidersIP-Eigenschaft für die Verfügbarkeitsgruppen-Listener-Ressource im Windows-Cluster auf 0 fest. Wenn die RegisterAllProvidersIP-Eigenschaft auf 0 festgelegt ist, müssen Sie den MultiSubnetFailover-Parameter nicht angeben. Weitere Informationen zu dieser Problemumgehung finden Sie auf der folgenden MSDN-Website:
Erstellen oder Konfigurieren eines Verfügbarkeitsgruppen-Listeners (SQL Server)
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Gilt für" aufgeführt sind.
Mehr Informationen
Weitere Informationen zur Softwareupdate-Terminologie erhalten Sie, indem Sie auf die folgende Artikelnummer klicken, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
824684 Beschreibung der Standardterminologie, die zur Beschreibung von Microsoft-Softwareupdates verwendet wird
Die in diesem Artikel behandelten Produkte von Drittanbietern werden von Unternehmen hergestellt, die von Microsoft unabhängig sind. Microsoft übernimmt keinerlei stillschweigende oder sonstige Garantie für die Leistung oder Zuverlässigkeit dieser Produkte.
Zusätzliche Dateiinformationen für Windows 7 und für Windows Server 2008 R2
Zusätzliche Dateien für alle unterstützten x86-basierten Versionen von Windows 7
Dateiname | X86_2c94e745aaec3431931d51020305e2b9_31bf3856ad364e35_6.1.7601.22382_none_6fcc2f6025233efa.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 702 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 17:26 |
Plattform | Unzutreffend |
Dateiname | X86_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7601.22382_none_ec81028053b014a1.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 2.924 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 11:37 |
Plattform | Unzutreffend |
Zusätzliche Dateien für alle unterstützten x64-basierten Versionen von Windows 7 und Windows Server 2008 R2
Dateiname | Amd64_fe6f131c914351fbcf6c3bc973329866_31bf3856ad364e35_6.1.7601.22382_none_a8b3dc126d52c78a.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 706 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 17:26 |
Plattform | Unzutreffend |
Dateiname | Amd64_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7601.22382_none_489f9e040c0d85d7.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 2.926 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 12:33 |
Plattform | Unzutreffend |
Zusätzliche Dateien für alle unterstützten IA-64-basierten Versionen von Windows Server 2008 R2
Dateiname | Ia64_649247023b89e8d48b1a96bffe9b85cd_31bf3856ad364e35_6.1.7601.22382_none_a9a13e5e5a562b37.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 704 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 17:26 |
Plattform | Unzutreffend |
Dateiname | Ia64_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7601.22382_none_ec82a67653ae1d9d.manifest |
Dateiversion | Unzutreffend |
Dateigröße | 2.925 |
Datum (UTC) | 12. Juli 2013 |
Zeit (UTC) | 11:35 |
Plattform | Unzutreffend |
No comments:
Post a Comment