How to find the port SQL Server is listing/using using TSQL/Code?
Use below code to programmatically
find the port number/s SQL Server Server is listing/using:
DECLARE @port varchar(15),
@value_name varchar(15),
@RegistryPath varchar(200)
IF (charindex('\',@@SERVERNAME)<>0) -- This loop is for named instances
BEGIN
SET @RegistryPath = 'SOFTWARE\Microsoft\Microsoft SQL Server\' +
RIGHT(@@SERVERNAME,LEN(@@SERVERNAME)-CHARINDEX('\',@@SERVERNAME)) +
'\MSSQLServer\SuperSocketNetLib\Tcp'
END
ELSE -- This is for Default Instance
BEGIN
SET @RegistryPath =
'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib\Tcp'
END
EXEC master..xp_regread
@rootkey='HKEY_LOCAL_MACHINE' ,
@key=@RegistryPath,
@value_name='TcpPort',
@value=@port OUTPUT
Print 'Port Number of Server '+ @@SERVERNAME + ' is: ' + @port
Note: This code is tested on SQL 2008 R2 SP2
Comments