Så här kontrollerar du om SQL Server lyssnar på en dynamisk port eller statisk port
Den här artikeln beskriver hur du avgör om din Microsoft SQL Server-namngivna instans lyssnar på en dynamisk port jämfört med en statisk port. Den här informationen kan vara användbar när du felsöker olika anslutningsproblem som är relaterade till SQL Server.
Som standard är en SQL Server-namngiven instans konfigurerad för att lyssna på dynamiska portar. Den hämtar en tillgänglig port från operativsystemet. Du kan också konfigurera SQL Server-namngivna instanser så att de börjar på en specifik port. Detta kallas för en statisk port. Mer information om statiska och dynamiska portar i SQL Server finns i Statiska eller dynamiska portar.
Använd följande procedur för att avgöra om DEN SQL Server-namngivna instansen lyssnar på en dynamisk port jämfört med en statisk port.
Alternativ 1: Använd Konfigurationshanteraren för SQL Server
I Konfigurationshanteraren för SQL Server expanderar du SQL Server Network Configuration, expanderar Protokoll för instansnamn och dubbelklickar sedan på TCP/IP.
I TCP/IP-egenskaper väljer du Protokoll.
Kontrollera värdet i inställningen Lyssna alla . Om den är inställd på Ja går du till steg 4. Om den är inställd på Nej går du till steg 6.
Gå till IP-adresser och rulla längst ned på sidan TCP/IP-egenskaper .
Kontrollera värdena i IP All och använd följande tabell för att avgöra om den namngivna instansen lyssnar på en dynamisk eller statisk port.
Dynamiska TCP-portar TCP-port SQL Server-instans med dynamiska eller statiska portar? Tom Tom Dynamiska portar <Number>
Tom Dynamiska portar – <Number>
är den dynamiska port som SQL Server för närvarande lyssnar på<Number1>
<Number2>
Lyssnar samtidigt på en dynamisk port <Number1>
och en statisk port<Number2>
Växla till IP-adresser. Observera att flera IP-adresser visas i formatet IP1, IP2, upp till IP All. En av dessa IP-adresser är avsedd för loopback-adaptern 127.0.0.1. Fler IP-adresser visas för varje IP-adress på datorn. (Du kommer förmodligen att se både IP4- och IP6-adresser.) Om du vill kontrollera om en specifik IP-adress har konfigurerats för en dynamisk eller statisk port använder du följande tabell.
Dynamiska TCP-portar TCP-port SQL Server-instans med dynamiska eller statiska portar? Tom Tom Dynamiska portar <Number>
Tom Dynamiska portar – <Number>
är den dynamiska port som SQL Server lyssnar på för närvarande.<Number1>
<Number2>
Lyssnar samtidigt på en dynamisk port <Number1>
och en statisk port<Number2>
Kommentar
Värdet 0 i dynamiska TCP-portar anger att den namngivna instansen för närvarande inte körs och är konfigurerad för dynamiska portar. När du har startat instansen återspeglar värdefältet den dynamiska port som instansen använder för närvarande.
Alternativ 2: Använd PowerShell
Kör följande skript i PowerShell ISE. Konsolfönstret visar alla relevanta TCP/IP-adresser för alla dina SQL Server-instanser (SQL Server 2014 via SQL Server 2019) som för närvarande är installerade i systemet.
clear Write-Host "SQL Server 2019" Write-Host "=====================" Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.*\MSSQLServer\SuperSocketNetLib\Tcp" | Select-Object -Property Enabled, KeepAlive, ListenOnAllIps,@{label='ServerInstance';expression={$_.PSPath.Substring(74)}} |Format-Table -AutoSize Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.*\MSSQLServer\SuperSocketNetLib\Tcp\IP*\" | Select-Object -Property TcpDynamicPorts,TcpPort,DisplayName, @{label='ServerInstance_and_IP';expression={$_.PSPath.Substring(74)}}, IpAddress |Format-Table -AutoSize Write-Host "SQL Server 2017" Write-Host "=====================" Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL14.*\MSSQLServer\SuperSocketNetLib\Tcp" | Select-Object -Property Enabled, KeepAlive, ListenOnAllIps,@{label='ServerInstance';expression={$_.PSPath.Substring(74)}} |Format-Table -AutoSize Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL14.*\MSSQLServer\SuperSocketNetLib\Tcp\IP*\" | Select-Object -Property TcpDynamicPorts,TcpPort, DisplayName, @{label='ServerInstance_and_IP';expression={$_.PSPath.Substring(74)}}, IpAddress |Format-Table -AutoSize Write-Host "SQL Server 2016" Write-Host "=====================" Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.*\MSSQLServer\SuperSocketNetLib\Tcp" | Select-Object -Property Enabled, KeepAlive, ListenOnAllIps,@{label='ServerInstance';expression={$_.PSPath.Substring(74)}} |Format-Table -AutoSize Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.*\MSSQLServer\SuperSocketNetLib\Tcp\IP*\" | Select-Object -Property TcpDynamicPorts,TcpPort, DisplayName, @{label='ServerInstance_and_IP';expression={$_.PSPath.Substring(74)}}, IpAddress |Format-Table -AutoSize Write-Host "SQL Server 2014" Write-Host "=====================" Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.*\MSSQLServer\SuperSocketNetLib\Tcp" | Select-Object -Property Enabled, KeepAlive, ListenOnAllIps,@{label='ServerInstance';expression={$_.PSPath.Substring(74)}} |Format-Table -AutoSize Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.*\MSSQLServer\SuperSocketNetLib\Tcp\IP*\" | Select-Object -Property TcpDynamicPorts,TcpPort, DisplayName, @{label='ServerInstance_and_IP';expression={$_.PSPath.Substring(74)}}, IpAddress |Format-Table -AutoSize
I utdata kontrollerar du värdet i kolumnen ListenOnAllIPs för din SQL Server-instans (se motsvarande värde i ServerInstance för den raden). Om värdet är inställt på 1 går du till steg 3. Om den är inställd på 0 går du till steg 4.
Sök igenom utdata efter en rad som har en ip-adresspost i kolumnen DisplayName för din instans eller kontrollera värdena för TcpDynamicPorts och TcpPort för raden. Använd sedan följande tabell för att avgöra om den namngivna instansen lyssnar på en dynamisk eller statisk port.
Dynamiska TCP-portar TCP-port SQL Server-instans med dynamiska eller statiska portar? Tom Tom Dynamiska portar <Number>
Tom Dynamiska portar – <Number>
är den dynamiska port som SQL för närvarande lyssnar på<Number1>
<Number2>
Lyssnar samtidigt på en dynamisk port <Number1>
och en statisk port<Number2>
Observera att flera IP-adresser visas i formatet IP1, IP2, upp till IP All. En av dessa IP-adresser är avsedd för loopback-adaptern 127.0.0.1. Fler IP-adresser visas för varje IP-adress på datorn. (Du kommer förmodligen att se både IP4- och IP6-adresser.) Om du vill kontrollera om en specifik IP-adress har konfigurerats för en dynamisk eller statisk port använder du följande tabell.
Dynamiska TCP-portar TCP-port SQL Server-instans med dynamiska eller statiska portar? Tom Tom Dynamiska portar <Number>
Tom Dynamiska portar – <Number>
är den dynamiska port som SQL Server lyssnar på för närvarande.<Number1>
<Number2>
Lyssnar samtidigt på en dynamisk port <Number1>
och en statisk port<Number2>
Kommentar
Värdet 0 i dynamiska TCP-portar anger att den namngivna instansen för närvarande inte körs och är konfigurerad för dynamiska portar. När du har startat instansen återspeglar värdefältet den dynamiska port som instansen använder för närvarande.