Comment identifier le numéro de port de SQL Server

Sommaire :

J’ai adoré le code de Bartosz X ci-dessus, et à partir de cela, j’ai commencé à construire là-dessus et je me suis retrouvé avec un script que j’ai utilisé dans de nombreux correctifs et autres situations de dépannage.

C’est parce qu’un peu grand, mais le voici:

#-----------------------------------------------------------------------------------------------------
# Get-SQLInstancePorts 
# Function to list SQL Server instances and their ports from the registry
# Marcello Miorelli
# 24-may-2024
#-----------------------------------------------------------------------------------------------------

function Get-SQLInstancePorts {
    $instances = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server').InstalledInstances
    $ports = @()

    foreach ($instance in $instances) 
        if ($instance -eq "MSSQLSERVER") 
            $keyPath = "HKLM:\SOFTWARE\MICROSOFT\MSSQLServer\MSSQLServer\Supersocketnetlib\TCP"
         else 
            $keyPath = "HKLM:\SOFTWARE\MICROSOFT\Microsoft SQL Server\$instance\MSSQLServer\Supersocketnetlib\TCP"
        

        try  Select-Object -ExpandProperty TcpPort -ErrorAction SilentlyContinue
            $tcpDynamicPorts = Get-ItemProperty -Path $keyPath -Name TcpDynamicPorts -ErrorAction SilentlyContinue  catch 
            Write-Host "Failed to retrieve port information for instance: $instance"
        
    

    return $ports
}

#----------------------------------------------------------
# function Get-FullyQualifiedComputerName 
# How do I get the localhost name in PowerShell?
#
# https://stackoverflow.com/a/78528603/1501497
# https://stackoverflow.com/a/72551767/1501497
#
# Marcello Miorelli
# 24-may-2024
#----------------------------------------------------------




function Get-FullyQualifiedComputerName 
    Add-Type -TypeDefinition @'
    public enum COMPUTER_NAME_FORMAT
        ComputerNameNetBIOS,
        ComputerNameDnsHostname,
        ComputerNameDnsDomain,
        ComputerNameDnsFullyQualified,
        ComputerNamePhysicalNetBIOS,
        ComputerNamePhysicalDnsHostname,
        ComputerNamePhysicalDnsDomain,
        ComputerNamePhysicalDnsFullyQualified,
        ComputerNameMax,
    
    public static class Kernel32
        [System.Runtime.InteropServices.DllImport("Kernel32.dll", SetLastError = true, CharSet = System.Runtime.InteropServices.CharSet.Auto)]
        public static extern bool GetComputerNameEx(COMPUTER_NAME_FORMAT NameType, System.Text.StringBuilder lpBuffer, ref uint lpnSize);
    
'@ 



# Function to list open SQL Server ports
function List-SQLServerPorts 
    $sqlProcesses  = Get-Process 

# Example usage
List-SQLServerPorts

Voici le résultat dans l’un de mes serveurs:

Entrez la description de l'image ici

À LIRE  Tableau des températures de couleur Kelvin | Échelle de couleurs d’éclairage en lumens

Vous voulez suivre notre blog ?

Recevez nos conseils les plus précieux dans votre boîte de réception, une fois par mois !

Articles associés