Dit artikel is handig voor een beginner in SQL Server-beheer en geeft inzicht in de SQL Server-poorten, de methoden om momenteel geconfigureerde poorten te identificeren.
Inleiding
We kunnen de poort definiëren als een eindpunt van service voor communicatiedoeleinden. Het kan binden aan een bepaalde applicatie of service. Zodra we SQL Server hebben geïnstalleerd, configureert het standaardpoorten voor SQL Server-services. Elke clienttoepassing gebruikt de combinatie van IP-adressen en poortnummer om verbinding te maken met SQL Server.
We kunnen twee soorten SQL Server-poorten hebben in SQL Server.
- Statische poort : Een statische poort is altijd gebonden aan een service of applicatie. Het verandert niet als gevolg van een service of herstart van het systeem. SQL Server gebruikt standaard het statische TCP-poortnummer 1433 voor de standaardexemplaar MSSQLSERVER. Als u SQL Server configureert om een andere statische poort dan de standaardpoort te gebruiken, moet u dit aan de clients of applicatie-eigenaren meedelen om in de verbindingsreeks te specificeren.
- Dynamische poort: u kunt SQL Server configureren om een dynamische poort. Als u dynamische poorttoewijzing gebruikt, specificeert u poortnummer nul in de netwerkconfiguratie. Zodra SQL Service opnieuw is opgestart, vraagt het een vrij poortnummer aan bij het besturingssysteem en wijst het die poort toe aan SQL Server.
Zoals u weet, gebruikt de toepassing een combinatie van het IP-adres van SQL Server en het poortnummer, u zou een vraag kunnen bedenken: hoe weet een toepassing het poortnummer om verbinding te maken met SQL Server?
Zodra het besturingssysteem een dynamische SQL Server-poort aan SQL Server toewijst, schrijft het dat poortnummer in het Windows-register. De SQL Server Browser-service gebruikt de statische UDP-poort 1434. Het leest het register voor de toegewezen TCP-poort. SQL Server-clientbibliotheek maakt verbinding en verzendt een UDP-bericht via poort 1434. SQL Server Browser-service geeft het poortnummer van een specifiek exemplaar terug. Een toepassing kan verbinding maken met SQL Server via die dynamische SQL Server-poort. Het standaard exemplaar van SQL Server gebruikt de statische poort; daarom retourneert SQL Server Browser geen poort voor de standaardinstantie.
In de meeste gevallen gebruikt SQL Server dezelfde dynamiek als de SQL Server-poort bij het opnieuw opstarten van de SQL-service. Stel dat u SQL Services hebt gestopt en het besturingssysteem het dynamische poortnummer (voorheen toegewezen aan SQL) aan een andere service heeft toegewezen, krijgt SQL Server een andere dynamische poort toegewezen.
SQL Browser-service is essentieel voor de genoemde instanties met dynamische poorttoewijzing . Het zou in de actieve status moeten zijn zodat de toepassing kan opvragen en de poortdetails kan ophalen.
Controleer SQL Server-poortnummer
In deze sectie zullen we een andere methode controleren om het SQL Server-poortnummer te controleren.
Methode 1: SQL Server Configuration Manager:
Het is de meest gebruikelijke methode om het SQL Server-poortnummer te vinden.
- Stap 1:
Open SQL Server Configuration Manager vanuit het startmenu. Als u meerdere SQL Server-versies heeft, krijgt u mogelijk een foutmelding bij het openen van SQL Server Configuration Manager:
Kan geen verbinding maken met WMI-provider. U hebt geen toestemming of de server is onbereikbaar
Om het probleem op te lossen, opent u de beheerdersopdrachtprompt en voert u de volgende opdracht uit
1> mofcomp “% programfiles (x86 )% \ Microsoft SQL Server \ 150 \ Shared \ sqlmgmproviderxpsp2up.mof “Wijzig in deze opdracht de SQL Server-versie
- SQL 2008 – 100
- SQL 2012 – 110
- SQL 2014 – 120
- SQL2016 – 130
- SQL 2017 – 140
- SQL 2019 – 150
- Stap 2:
Ga naar Netwerkconfiguratie, klik op de SQL-instantie waarvoor je de SQL-poort wilt controleren
- Stap 3:
Het opent de lijst met protocollen. Klik met de rechtermuisknop op TCP / IP en eigenschappen
- Stap 4: Klik op IP-adressen en scrol omlaag naar IPAll groep. U kunt TCP dynamische SQL-poorten en TCP-poort zien in de volgende schermafbeelding.
De waarde van de dynamische TCP-poorten laat zien dat we dynamische poortconfiguratie gebruiken. De huidige toegewezen dynamische TCP-SQL-poort is 51688.
Als we een statische poort willen gebruiken, verwijder dan de dynamische poortwaarde en specificeer een statische poort in de TCP-poort. Dit poortnummer moet uniek zijn en niet worden gebruikt door andere toepassingen. U moet SQL Services opnieuw starten om deze wijziging door te voeren.
- Opmerking: u moet de SQL Server Port-configuratie alleen wijzigen met behulp van SQL Server Configuration Manager.
Methode 2: SQL Server-foutenlogboeken:
SQL Server registreert een vermelding in de SQL Server-foutenlogboeken bij elke herstart van SQL Diensten. We kunnen de uitgebreide opgeslagen procedure xp_readerrorlog gebruiken om het foutenlogboek te filteren met een bepaald trefwoord.
De volgende query gebruikt de uitgebreide opgeslagen procedure xp_readerrorlog om te controleren want de server luistert naar een trefwoord.
1
2
3
|
EXEC xp_ReadErrorLog 0, 1, N “Server luistert aan”, N “any”, NULL, NULL, “DESC”
GO
|
U krijgt de details van de SQL Server-poort waarop de huidige SQL Server-instantie is geconfigureerd.
- Opmerking: als u regelmatig foutenlogboeken recyclet, is het mogelijk dat u met deze methode SQL Server Port niet kunt vinden.
Methode 3: SQL Server-poort ophalen uit het register met xp_instance_regread:
We kunnen een uitgebreide opgeslagen procedure gebruiken om de SQL-poortwaarde op te halen. Voer de volgende code uit in SSMS om een dynamische poort op te halen voor de momenteel verbonden SQL-instantie.
We kunnen @ Value_name = TcpPort gebruiken om details over de statische poort te krijgen.
Methode 4: SQL Server-poort ophalen door sys.dm_exec_connections DMV te gebruiken:
We kunnen sys.dm_exec_connections DMV gebruiken om te controleren op de TCP-poort van de aangesloten SQL Server-instantie. We gebruiken de @@ SPID-variabele om de huidige sessie-SP-ID te retourneren.
1
2
3
4
|
SELECTEER local_tcp_port
VAN sys. dm_exec_connections
WHERE session_id = @@ SPID;
GO
|
Methode 5: SQL Server Port ophalen door de Windows Event Viewer te gebruiken:
We kunnen Windows Event Viewer ook gebruiken om te controleren op SQL Serverpoortgegevens. Zodra we SQL Services opnieuw hebben opgestart, krijgt Windows Event Viewer ook een vermelding voor de SQL-poort. Windows Event Viewer heeft mogelijk een groot aantal gebeurtenissen. Het is beter om gebeurtenislogboeken te filteren op gebeurtenis-id 26022.
Ga naar Uitvoeren en typ eventvwr. Het opent de Windows Event Viewer-console. Klik op – Huidig logboek filteren.
Specificeer de gebeurtenis-ID 26022 en klik op OK
De Event Viewer toont gebeurtenissen voor alle geïnstalleerde SQL Servers in de servers. U kunt naar een specifieke instantie zoeken en het poortnummer controleren.
U kunt ook een specifieke SQL-instantie selecteren in de vervolgkeuzelijst met gebeurtenisbronnen.
In de volgende schermafbeelding zien we een invoer van SQL Server Port in de Windows-gebeurtenisviewer.
Conclusie
In dit artikel hebben we methoden onderzocht en geïdentificeerd om SQL Server-poorten te controleren en de statische en dynamische poortconfiguratie te wijzigen. Als u opmerkingen of vragen heeft, kunt u deze achterlaten in de onderstaande opmerkingen.
- Auteur
- Recente berichten
Hij is de maker van een van de grootste gratis online collecties met artikelen over een enkel onderwerp, met zijn 50-delige serie over SQL Server Always On Availability Groups. Op basis van zijn bijdrage aan de SQL Server-gemeenschap, werd hij bekroond met verschillende prijzen, waaronder de prestigieuze “Beste auteur van het jaar”, continu in 2020 en 2021 bij SQLShack.
Raj is altijd geïnteresseerd in nieuwe uitdagingen, dus als je advies nodig hebt hulp bij elk onderwerp dat in zijn geschriften aan bod komt, kan hij worden bereikt op [email protected]
Bekijk alle berichten van Rajendra Gupta
- Sessietime-outs in SQL Server Always On-beschikbaarheidsgroepen – 8 februari 2021
- Kleine en grote versie-upgrades uitvoeren voor AWS RDS SQL Server – 29 januari 2021
- AWS RDS PostgreSQL-instanties implementeren – 27 januari 2021