다음을 통해 공유


SQL Server가 동적 포트 또는 정적 포트에서 수신 대기하는지 확인하는 방법

이 문서에서는 Microsoft SQL Server 명명된 인스턴스가 동적 포트와 정적 포트에서 수신 대기하는지 여부를 확인하는 방법을 설명합니다. 이 정보는 SQL Server와 관련된 다양한 연결 문제를 해결할 때 유용할 수 있습니다.

기본적으로 SQL Server 명명된 인스턴스는 동적 포트에서 수신 대기하도록 구성됩니다. 운영 체제에서 사용 가능한 포트를 가져옵니다. 특정 포트에서 시작하도록 SQL Server 명명된 인스턴스를 구성할 수도 있습니다. 이를 정적 포트라고 합니다. SQL Server 컨텍스트의 정적 및 동적 포트에 대한 자세한 내용은 정적 포트와 동적 포트를 참조 하세요.

다음 절차를 사용하여 SQL Server 명명된 인스턴스가 동적 포트와 정적 포트에서 수신 대기하는지 여부를 확인합니다.

옵션 1: SQL Server 구성 관리자 사용

  1. SQL Server 구성 관리자 SQL Server 네트워크 구성을 확장하고 인스턴스 이름에 대한 프로토콜을 확장한 다음 TCP/IP를 두 번 클릭합니다.

  2. TCP/IP 속성에서 프로토콜을 선택합니다.

  3. 모두 수신 대기 설정에서 값을 확인합니다. 예설정된 경우 4단계로 이동합니다. 아니요설정된 경우 6단계로 이동합니다.

  4. IP 주소이동하여 TCP/IP 속성 페이지의 아래쪽으로 스크롤합니다.

  5. IP All값을 확인하고 다음 표를 사용하여 명명된 인스턴스가 동적 또는 정적 포트에서 수신 대기하는지 여부를 확인합니다.

    TCP 동적 포트 TCP 포트 동적 또는 정적 포트를 사용하는 SQL Server 인스턴스
    Blank Blank 동적 포트
    <Number> Blank 동적 포트 - <Number> SQL Server가 현재 수신 대기 중인 동적 포트입니다.
    <Number1> <Number2> 동적 포트 및 정적 포트 <Number1> 에서 동시에 수신 대기 <Number2>
  6. IP 주소로 전환합니다. IP 1, IP2 형식의 IP 모두까지 여러 IP 주소가 표시됩니다. 이러한 IP 주소 중 하나는 루프백 어댑터 127.0.0.1을 위한 것입니다. 컴퓨터의 각 IP 주소에 대해 더 많은 IP 주소가 표시됩니다. (IP4 및 IP6 주소가 모두 표시될 수 있습니다.) 특정 IP 주소가 동적 포트와 정적 포트에 대해 구성되었는지 확인하려면 다음 표를 사용합니다.

    TCP 동적 포트 TCP 포트 동적 또는 정적 포트를 사용하는 SQL Server 인스턴스
    Blank Blank 동적 포트
    <Number> Blank 동적 포트 - <Number> SQL Server가 현재 수신 대기 중인 동적 포트입니다.
    <Number1> <Number2> 동적 포트 및 정적 포트 <Number1> 에서 동시에 수신 대기 <Number2>

참고 항목

TCP 동적 포트값이 0이면 명명된 인스턴스가 현재 실행되고 있지 않으며 동적 포트에 대해 구성되어 있음을 나타냅니다. 인스턴스를 시작한 후 값 필드에는 인스턴스가 현재 사용 중인 동적 포트가 반영됩니다.

옵션 2: PowerShell 사용

  1. PowerShell ISE에서 다음 스크립트를 실행합니다. 콘솔 창에는 현재 시스템에 설치된 모든 SQL Server 인스턴스(SQL Server 2014~ SQL Server 2019)에 대한 모든 관련 TCP/IP가 표시됩니다.

    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
    
  2. 출력에서 SQL Server 인스턴스에 대한 ListenOnAllIPs 열의 값을 확인합니다(해당 행에 대한 ServerInstance해당 값 참조). 값이 1설정된 경우 3단계로 이동합니다. 0으로 설정된 경우 4단계로 이동합니다.

  3. 인스턴스의 DisplayName 열에 있는 임의의 IP 주소 항목이 있는 행의 출력을 검색하거나 행에 대한 TcpDynamicPortsTcpPort 값을 확인합니다. 그런 다음, 다음 표를 사용하여 명명된 인스턴스가 동적 또는 정적 포트에서 수신 대기하는지 여부를 확인합니다.

    TCP 동적 포트 TCP 포트 동적 또는 정적 포트를 사용하는 SQL Server 인스턴스
    Blank Blank 동적 포트
    <Number> Blank 동적 포트 - <Number> SQL이 현재 수신 대기 중인 동적 포트입니다.
    <Number1> <Number2> 동적 포트 및 정적 포트 <Number1> 에서 동시에 수신 대기 <Number2>
  4. IP 1, IP2 형식의 IP 모두까지 여러 IP 주소가 표시됩니다. 이러한 IP 주소 중 하나는 루프백 어댑터 127.0.0.1을 위한 것입니다. 컴퓨터의 각 IP 주소에 대해 더 많은 IP 주소가 표시됩니다. (IP4 및 IP6 주소가 모두 표시될 수 있습니다.) 특정 IP 주소가 동적 포트와 정적 포트에 대해 구성되었는지 확인하려면 다음 표를 사용합니다.

    TCP 동적 포트 TCP 포트 동적 또는 정적 포트를 사용하는 SQL Server 인스턴스
    Blank Blank 동적 포트
    <Number> Blank 동적 포트 - <Number> SQL Server가 현재 수신 대기 중인 동적 포트입니다.
    <Number1> <Number2> 동적 포트 및 정적 포트 <Number1> 에서 동시에 수신 대기 <Number2>

참고 항목

TCP 동적 포트값이 0이면 명명된 인스턴스가 현재 실행되고 있지 않으며 동적 포트에 대해 구성되어 있음을 나타냅니다. 인스턴스를 시작한 후 값 필드에는 인스턴스가 현재 사용 중인 동적 포트가 반영됩니다.

참고 항목