Hoe de fout ‘Er is een netwerkgerelateerde of instantiespecifieke fout opgetreden tijdens het tot stand brengen van een verbinding met SQL Server’ oplossen?
“Er is een netwerkgerelateerde of instance-specifieke fout opgetreden bij het tot stand brengen van een verbinding met SQL Server. De server is niet gevonden of was niet toegankelijk. Controleer of de instantienaam correct is en of SQL Server is geconfigureerd om externe verbindingen toe te staan. (Provider: Named Pipes Provider, fout: 40 - Kon geen verbinding met SQL Server openen) (Microsoft SQL Server, fout: 53) ”.
Het artikel bespreekt een uitgebreide lijst met methoden voor probleemoplossing die kunnen worden gebruikt om verbinding te maken met de SQL-server. Allereerst bespreken we problemen die zich voordoen wanneer dat nodig is maak verbinding met de externe server via het IP-adres aangezien dit de meest voorkomende oorzaak is. Deze stappen zijn geschreven in "SQL Server 2008 R2 ″ Aan "Windows 10 ″, maar ze kunnen ook op andere versies worden gebruikt met kleine wijzigingen.
De fout betekent meestal dat de "SQL-server is niet gevonden " of "TCP-poort is onbekend of onjuist ", of het kan worden geblokkeerd door de "firewall".
Methode 1: Verzamel informatie over het exemplaar van de SQL Server.
In deze sectie bespreken we manieren om het exemplaar van het SQL Server werkt of niet, samen met methoden om het te repareren als het niet werkt.
Stap 1. Controleer of een exemplaar van SQL Server is geïnstalleerd en werkt of niet
Log allereerst in op de computer waarop de SQL-serverinstantie wordt gehost. Volg nu deze stappen om Services in Windows te openen.
- Klik op de "Start menu" en wijs vervolgens naar "Alle programma's".
- Wijs nu naar de SQL Server en wijs vervolgens naar "Configuratietools"
- Klik "SQL Server Configuration Manager".
- Selecteer nu "SQL Server-services" en controleer in het rechterdeelvenster of de instantie van een database-engine draait of niet.
- Bovendien is deze direct te openen door te typen "Services.msc" in de RENNEN en klik OK. Het volgende scherm verschijnt.
Controleer nu of de database-engine is geconfigureerd om externe verbindingen te accepteren. Volg de volgende stappen om dit te controleren.
- Nadat services zijn geopend, ziet u de database-engine in het rechterdeelvenster. De "MSSQLSERVER" is een standaard naamloze instantie. Een standaardinstantie kan er maar één zijn.
- In het geval van de "SQL Express", standaardinstantie zal zijn "SQLEXPRESS" tenzij het tijdens de installatie door iemand anders wordt genoemd.
- Controleer of de instantie die u probeert te verbinden dezelfde naam heeft als in de services.
- Controleer ook of de status van de instantie "RENNEN".
- Als u bovendien probeert verbinding te maken met named instant, controleer dan nogmaals of "SQL Server Browser-service" loopt al. U moet dus controleren of het "SQL Server Browser-service" wordt gestart op de server waarop SQL Server is geïnstalleerd.
- Als de database-engine niet actief is, moet u deze opnieuw opstarten. Dus om het "Database-engine", klik in het rechterdeelvenster met de rechtermuisknop op het "Database Engine" ("MSSQLSERVER" standaard)en klik vervolgens op "Begin".
Stap 2. Verkrijg het IP-adres van de computer.
Volg hiervoor deze stappen.
- Klik eerst in het startmenu op "RENNEN" en typ "Cmd" en druk op OK.
- In opdrachtprompt venster type "Ipconfig" en noteer IPV4 en IPV6-adressen. Mensen gebruiken meestal IPV4-adres.
Stap 3. Haal het TCP-poortnummer op dat door de SQL-server wordt gebruikt
Volg de volgende stappen om het TCP-poortnummer op te halen dat door de SQL-server wordt gebruikt
- Gebruik makend van "SQL Server Management Studio" (SSMS) verbinding maken met de instantie van SQL-server
- Van "Objectverkenner" uitbreiden "Beheer", uitbreiden "SQL-serverlogboek" en klik op het huidige log waarop u filter moet toepassen.
- Om filer toe te passen, klikt u op filter toepassen en typt u "Server luistert aan" in Bericht bevat tekstvak. Klik op filter toepassen en druk op ok.
- Een bericht als "Server luistert op [‘ any ’
1433]” moet worden getoond. Het bericht laat zien dat de SQL Server-instantie luistert op alle computers met IP-adres IPv4 en TCP-poort: is1433 (standaard). - Voor meer dan één exemplaar zal de TCP-poort voor elk exemplaar anders zijn.
- Is dit niet het geval, klik dan op "Alle programma's", wijs naar MS SQL server-configuratietools, "SQL-serverconfiguratiebeheer" en klik met de rechtermuisknop "TCP \ IP" en klik op inschakelen en herstart SQL-server om de wijzigingen impact te laten hebben.
Methode 2: Protocollen inschakelen voor poort 1433
Verbinding maken met het "Database-engine" van een andere computer is in veel niet toegestaan "SQL Server" implementaties, tenzij een beheerder gebruikmaakt van "Configuratiebeheer" om het toe te staan. Om dit te doen, moeten de volgende stappen worden gevolgd.
- Klik op "Start menu" en wijs vervolgens naar "Alle programma's"
- Wijs naar de "SQL-server 2008 R2"
- Wijzen naar "Configuratietools", en na deze klik "SQL Server Configuration Manager".
- Uitbreiden "SQL Server-netwerkconfiguratie".
- Selecteer 'protocollen voor MSSQL-server '. Klik op "TCP \ IP" in het rechter paneel.
- Op het tabblad "protocol" stel inschakelen in als "Ja".
- Kies de "Tabblad IP-adres" uit het raam en zet “TCP-poort ' gelijk aan "1433″ in de "IP All" binnenkomst.
- Start nu de database-engine opnieuw om wijzigingen aan te brengen en hun impact te behouden. Om dit te doen vanuit het linkerdeelvenster, selecteert u SQL-serverservices en klikt u vervolgens in het rechterdeelvenster met de rechtermuisknop op de database-engine-instantie en drukt u op "herstarten".
Methode 3: Maak een firewall-uitzondering
Soms wordt de Windows-firewall ingeschakeld en worden koppelingen van een andere computer geblokkeerd. Volg deze stappen om het te repareren.
- Klik op "Start" en begin met typen "Firewall.cpl" in de run box.
- U krijgt het "configuratieframe" voor Windows Firewall door het "Firewall.cpl" opdracht. U kunt de firewall omdraaien "aan uit" met uitzonderingen en andere instellingen die hier worden toegepast. Controleer de firewallstatus en schakel deze in om deze te activeren als de firewall is uitgeschakeld. Als u dit zojuist hebt ingeschakeld, blokkeert uw firewall op dit moment elk "SQL Server" -verbindingsverzoek naar uw computer. Door bepaalde uitzonderingen te maken, moet u de firewall configureren om toegang tot een SQL Server-database-engine toe te staan.
- Klik op "Geavanceerde instellingen"
- We moeten leren over de poorten die worden gebruikt voor "SQL Server" en de "SQL Server-browser”Functie bij het omgaan met“ SQL Server ”firewall configuraties. Beiden zijn betrokken bij het opzetten van een “firewall" voor de "SQL Server" . Het zou dus nodig zijn om beide concepten afzonderlijk te doorlopen.
- U kunt verkeerspogingen toestaan of blokkeren die voldoen aan de vereisten in de regel om toegang te krijgen tot de computer. Standaard “Inkomendverkeer" is geblokkeerd, moet u instellen"inkomend"regel" om het verkeer de computer te laten bereiken. Tik op de inkomende regels in het linkerdeelvenster van de “Windows Firewall met GeavanceerdVeiligheid”En klik op de nieuwe regel in het"Acties" venster.
- Selecteer 'Haven" onder "RegelType”En druk op “De volgende" knop
- Selecteer nu "Specifieke lokale poorten" en zet het op 1433
- Selecteer nu "Sta het toeverbinding" in de"Actie" dialoogvenster en druk op de knop Volgende
- Geef de regel een “titel" op dit podium en druk op de “Af hebben" knop.
- Selecteer 'Aangepaste regel ' van "Nieuwe regel" tabblad
- Klik "aanpassen"
- Selecteer 'Database Engine-instantieOnderhoud" van de "Service aanpassenInstellingen ' onder'Pas hierop toe onderhoud"en klik op het"OK" knop
- Geef de regel een naam en klik op voltooien
- Voeg ook toe "Sqlservr.exe" meestal gevestigd in "C: \ Program Files (x86) \ Microsoft SQL Server \ MSSQL.x \ MSSQL \ Bin" (of controleer uw daadwerkelijke mappad) naar het pad, controleer uw installaties voor het werkelijke mappad) en poort waarvan de standaardwaarde is “1433”. Controleer ook uw verbindingsreeks.
Methode 4: Controleer de lokale verbinding
Een van de redenen voor deze fout is dat als we de verkeerde servernaam opgeven, dit zal resulteren in een fout. Zoals te zien is in de onderstaande afbeelding is de opgegeven servernaam "DESKTOP-UD88TLT1" terwijl de juiste servernaam is "DESKTOP-UD88TLT". Het kan dus geen verbinding maken met de server, wat zal resulteren in een fout "kan geen verbinding maken met de server". Dit is de meest fundamentele reden voor fouten, dus we moeten dit eerst controleren als we lokaal werken.
De fout doet zich voor wanneer u lokaal verbinding maakt met de SQL-server met de verkeerde servernaam. Als u de express-editie gebruikt die volgt op uw servernaam, voeg dan toe "\SQLEXPRESS" zoals te zien in de onderstaande afbeelding.