Freigeben über


MSSQLSERVER_17182

Gilt für:SQL Server

Details

attribute Wert
Produktname SQL Server
Ereignis-ID 17182
Ereignisquelle MSSQLSERVER
Komponente SQLEngine
Symbolischer Name INIT_TDSSNICLIENT
Meldungstext Fehler bei der TDSSNIClient-Initialisierung. Fehler 0x%lx, Statuscode 0x0lx. Grund: % S_MSG %.*ls

Erklärung

Wenn SQL Server gestartet wird, müssen Sie einen TDS-Listener (Tabular Data Stream) und Netzwerkbibliotheken initialisieren, um eingehende Verbindungen zu akzeptieren. Wenn diese Initialisierung fehlschlägt, wird der Fehler 17182 ausgelöst. Zu den Initialisierungsaktivitäten gehören das Starten des SNI-Schicht-/TDS-Listeners, das Konfigurieren oder Initialisieren von Ports, Protokollen, SSPI-Authentifizierungskontext , Verschlüsselung (TLS/SSL) usw.

In der Regel wird dieser Fehler zusammen mit anderen Fehlern MSSQLSERVER_17826 und MSSQLSERVER_17120

Die Fehlermeldung 17182 enthält drei Platzhalter, die basierend auf dem aufgetretenen Problem dynamisch gefüllt werden. Der Hexadezimalwert "Fehler mit Fehler 0x%lx" ist der zugrunde liegende Betriebssystemfehler, der aufgetreten ist. Dies ist der wichtigste Teil des Fehlers. Der Text nach "Grund: " ist die Textnachricht, die diesem Betriebssystemfehler zugeordnet ist. Zur Veranschaulichung sehen Sie hier ein Beispiel für diesen Fehler:

   Error: 17182, Severity: 16, State: 1.
   TDSSNIClient initialization failed with error 0x139f, status code 0x80. Reason: Unable to initialize SSL support. The group or resource is not in the correct state to perform the requested operation.

In diesem Fall ist der Betriebssystemfehler = 0x139f, der 5023 im Dezimalwert ist. Wenn Sie zu einer Eingabeaufforderung wechseln und eingeben net helpmsg 5023 , um diesen Betriebssystemfehler zu suchen, erhalten Sie Folgendes: "Die Gruppe oder Ressource ist nicht im richtigen Zustand, um den angeforderten Vorgang auszuführen." Dieser Text wird nach "Reason:" im Beispiel angezeigt.

Der dritte Platzhalter ist status Code. Es ist ein interner Wert, der angibt, welche Komponente in der Initialisierung fehlgeschlagen ist. Dies kann Microsoft helfen, das Problem bei Bedarf ausführlicher zu beheben. Hier sind einige gängige status-Codes, die beobachtet wurden:

Statuscode Bedeutung
0x01 SNI-Client
0x04 Kein Listener (leer)
0x0a TCP/IP-Anbieter
0x40 Shared Memory-Anbieter
0x50 Named Pipe-Anbieter
0x80 SSL-Anbieter

Ursache

Es kann mehrere Gründe geben, die zu diesem Fehler führen können, aber sie beziehen sich alle auf die Initialisierung von Netzwerkbibliotheken oder die Verschlüsselung auf SQL Server Netzwerkschnittstellenschicht (SNI). Im Folgenden finden Sie einige Beispiele:

  • Falsch konfigurierte Netzwerkprotokolle
    • Kein Protokoll ausgewählt
    • Ungültige TCP-Ports werden angegeben.
  • Falsch konfiguriertes TLS/SSL für die Netzwerkverschlüsselung
    • ungültiges Zertifikat,
    • Ungültige TLS-Version
    • Ungültige oder fehlende Registrierungsschlüsselkonfiguration
  • Betriebssystemproblem mit Protokollen oder TLS/SSL

Benutzeraktion

  1. Auflösen falsch konfigurierter Protokolle Ein häufiges Problem, das gemeldet wurde, umfasst falsch konfigurierte SQL Server Protokolle. Weitere Informationen finden Sie unter SQL Server nicht gestartet werden kann, wenn alle Protokolle deaktiviert sind. Sie können die folgende Fehlersequenz im Fehlerprotokoll beobachten:

    Error: 17182, Severity: 16, State: 1.
    TDSSNIClient initialization failed with error 0xd, status code 0x4. Reason: **All protocols are disabled. The data is invalid**.
    Error: 17182, Severity: 16, State: 1.
    TDSSNIClient initialization failed with error 0xd, status code 0x1. Reason: Initialization failed with an infrastructure error. Check for previous errors. The data is    invalid.
    Error: 17826, Severity: 18, State: 3.
    Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the    error log.
    Error: 17120, Severity: 16, State: 1.
    SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the operating system error log for information about possible related    problems.
    
  2. Beheben von Problemen bei der TLS-Konfiguration und -Aktualisierung Ein weiteres häufiges Problem, das gemeldet wurde, ist die TLS-Konfiguration auf dem Server, die verhindert, dass SQL Server eine Hintergrundkommunikationsaufgabe erstellen.

    Error: 26011, Severity: 16, State: 1.
    The server was unable to initialize encryption because of a problem with a security library. The security library may be missing. Verify that security.dll exists on  the    system.
    Error: 17182, Severity: 16, State: 1.
    TDSSNIClient initialization failed with error 0x139f, status code 0x80. Reason: Unable to initialize SSL support. The group or resource is not in the correct state  to    perform the requested operation.
    Error: 17182, Severity: 16, State: 1.
    TDSSNIClient initialization failed with error 0x139f, status code 0x1. Reason: Initialization failed with an infrastructure error. Check for previous errors. The group  or    resource is not in the correct state to perform the requested operation.
    Error: 17826, Severity: 18, State: 3.
    Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in  the    error log.
    Error: 17120, Severity: 16, State: 1.
    SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.
    

    Stellen Sie sicher, dass Sie TLS für SQL Server ordnungsgemäß konfigurieren. Informationen zu erforderlichen Updates finden Sie unter TLS 1.2-Unterstützung für Microsoft SQL Server

  3. Beheben von Problemen mit Verschlüsselungszertifikaten Ein weiteres häufiges Problem ist die Fehlkonfiguration von TLS/SSL-Zertifikaten, die dazu führt, dass SQL Server einen Thread nicht starten und starten können.

    Error: 26014, Severity: 16, State: 1.
    Unable to load user-specified certificate [Cert Hash(sha1) "%hs"]. The server will not accept a connection. You should verify that the certificate is correctly installed.    See "Configuring Certificate for Use by SSL" in Books Online.
    
    Error: 17182, Severity: 16, State: 1.
    TDSSNIClient initialization failed with error 0x80092004, status code 0x80. Reason: Unable to initialize SSL support. Cannot find object or property.
    
    Error: 17826, Severity: 18, State: 3.
    Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the    error log.
    
    Error: 17120, Severity: 16, State: 1.
    SQL Server could not spawn FRunCommunicationsManager thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.
    

    Weitere Informationen finden Sie unter SQL Server Dienst nicht gestartet werden kann, nachdem Sie eine instance für die Verwendung eines Secure Sockets Layer-Zertifikats konfiguriert haben.

  4. Verwenden Sie SQL Server-Konfigurations-Manager, um zu überprüfen, ob die Netzwerkprotokolle ordnungsgemäß konfiguriert wurden. Weitere Informationen finden Sie unter Aktivieren oder Deaktivieren eines Servernetzwerkprotokolls.

  5. Verwenden Sie SQL Server-Konfigurations-Manager 2019 oder höher, um Zertifikate zu verwalten und zu überprüfen. Weitere Informationen finden Sie unter Zertifikatverwaltung (SQL Server-Konfigurations-Manager).