Delen via


Gebruikers kunnen mogelijk geen verbinding maken met SQL Server via TCP/IP-protocol

Dit artikel helpt u bij het oplossen van het probleem waarbij u geen verbinding kunt maken met SQL Server met behulp van TCP/IP-protocol.

Oorspronkelijke productversie: SQL Server
Oorspronkelijk KB-nummer: 2018930

Symptomen

Wanneer u Microsoft SQL Server gebruikt, ziet u mogelijk een of meer van de volgende symptomen:

Daarnaast worden de volgende berichten vastgelegd in het SQL Server Errorlog-bestand:

  • Bij het opstarten van SQL Server:

    Fout: 26023, Ernst: 16, Status: 1.
    De TCP-provider van de server kan niet luisteren op ['any'ipv6<> 1963]. Tcp-poort is al in gebruik.
    Fout: 9692, Ernst: 16, Status: 1.
    Het Service Broker-protocoltransport kan niet luisteren op poort 1963 omdat het door een ander proces wordt gebruikt.

  • Voor mislukte aanmeldingen:

    SQL Server 2008 en nieuwere versies:

    Fout: 18456, Ernst: 14, Status: 11.
    Aanmelden is mislukt voor gebruiker 'MyDomain\TestAcc'. Reden: Validatie van servertoegang op basis van tokens is mislukt met een infrastructuurfout. Controleer op eerdere fouten.

Oorzaak

De fout treedt op wanneer u een TCP-eindpunt voor Service Broker configureert met dezelfde poort die het SQL Server-exemplaar is geconfigureerd voor gebruik. U kunt de lijst met eindpunten verkrijgen door de volgende query uit te voeren:

SELECT * FROM sys.tcp_endpoints

Notitie

Zoals uitgelegd in het onderwerp Books Online over sys.tcp_endpoints (Transact-SQL), bevat deze weergave geen informatie over de poorten en protocollen die momenteel zijn geconfigureerd voor het gebruik van het SQL Server-exemplaar. Zie SQL Server Configuration Manager voor meer informatie.

Oplossing

  • Methode 1: Zet het eindpunt neer dat het probleem veroorzaakt met behulp van de opdracht DROP ENDPOINT (Transact-SQL).

    Als u bijvoorbeeld een eindpunt met de naam wilt TestEP verwijderen, kunt u de volgende opdracht gebruiken:

    DROP ENDPOINT TestEP
    
  • Methode 2: Wijzig het eindpunt om een andere poort te gebruiken met behulp van de opdracht ALTER ENDPOINT (Transact-SQL).

    Als u bijvoorbeeld een eindpunt met de naam TestEP wilt wijzigen om een andere poort te gebruiken, kunt u de volgende opdracht gebruiken:

    ALTER ENDPOINT TestEP as tcp (listener_port=1980)
    

Meer informatie

Vergelijkbare problemen kunnen ook optreden met andere TCP-eindpunten, zoals die zijn gemaakt voor databasespiegeling, en de foutberichten bij het opstarten van SQL Server worden dienovereenkomstig gewijzigd.