En servidores Microsoft SQL Server, el puerto predeterminado en que está escuchando el servicio es el: 1433 (TCP).
Sin embargo, es posible cambiar la configuración e indicar otro puerto.
Veamos algunos métodos para ver el puerto de una instancia en SQL Server:
1) Utilizando el "Administrador de configuración de SQL Server":
Encontraremos esta herramienta en el grupo de programas de SQL Server.
Ejecutamos:
Ejemplo de ruta del fichero MSC si disponemos de SQL Server 2008 R2:
C:\Windows\SysWOW64\mmc.exe /32 C:\Windows\SysWOW64\SQLServerManager10.msc
Desplegamos:
"Configuración de red de SQL Server", clic sobre "Protocolos MSSQLSERVER" (donde MSSQLSERVER es el nombre de la instancia), propiedades sobre TCP/IP, pestaña "Direcciones IP", buscamos "IPAll"
A continuación, podemos ver que el puerto TCP, en este ejemplo, figura el 1280.
2) Clave en el registro de Windows:
La ubicación de la clave es la siguiente:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Tcp\IPAll
Valor:
"TcpPort"="XXXX"
Donde "XXXX" es el número del puerto.
La ubicación de la clave en el registro cambia dependiendo de la versión de SQL Server.
Por ejemplo:
Por ejemplo:
MSSQL10_50.MSSQLSERVER corresponde a:
MSSQL10_50 = SQL Server 2008 R2.
MSSQLSERVER = Nombre de la instancia.
3) Utilizando tasklist y netstat:
3.1) Utilizando el identificador del proceso:
Teniendo en cuenta que el nombre del binario del servicio de SQL Server es: sqlservr.exe
Teniendo en cuenta que el nombre del binario del servicio de SQL Server es: sqlservr.exe
Con tasklist mostramos el identificador del proceso sobre el que esta escuchando el servicio SQL Server:
C:\>tasklist | find /i "sqlservr.exe"
sqlservr.exe 1184 Services 0 3.181.800 KB
sqlservr.exe 1184 Services 0 3.181.800 KB
Con netstat -oan (el parámetro "o", muestra el identificador del proceso), buscamos el identificador del proceso y nos aparecerá el puerto:
C:\>netstat -oan | find /i "1184"
TCP 0.0.0.0:1280 0.0.0.0:0 LISTENING 1184
TCP 0.0.0.0:1280 0.0.0.0:0 LISTENING 1184
3.2) Utilizando la lista de conexiones abiertas con el nombre del proceso
También con netstat, podemos hacer que nos muestre el nombre del proceso con el parámetro "b", si ejecutamos netstat -abn, encontraremos el proceso sqlservr.exe enlazado a 0.0.0.0 (todas las direcciones IP) a un puerto, según la siguiente captura de pantalla, el puerto: 1280
4) Utilizando T-SQL:
Para utilizar T-SQL debernos conectar primero con SQL Server.
4.1) Stored procedure: xp_ReadErrorLog
Ejecutaremos:
Use Master
GO
EXEC xp_ReadErrorLog 0, 1, N'Server is listening on', N'any', NULL, NULL, 'DESC'
GO
GO
Vista ejecución:
En vez de utilizar el stored procedure: xp_ReadErrorLog, podemos acceder al fichero de ERRORLOG de forma manual, para ello deberemos saber su ubicación.
Podemos averiguar su ubicación, ejecutando el siguiente T-SQL:
USE master
GO
xp_readerrorlog 0, 1, N'Logging SQL Server messages in file', NULL, NULL, N'asc'
GO
Una vez sabemos la ruta del fichero, podemos abrirlo utilizando un editor de texto y localizar el puerto al que se enlaza el servicio:
4.2) Select de la tabla: sys.dm_exec_connections
Ejecutaremos:
Use master
SELECT local_tcp_port
FROM sys.dm_exec_connections
WHERE session_id = @@SPID
SELECT local_tcp_port
FROM sys.dm_exec_connections
WHERE session_id = @@SPID
5) Visor de eventos (eventvwr.msc):
Aplicación, eventos con el ID: 26022
Por otro lado, si queremos saber el nombre de una instancia, disponemos de varios métodos:
MSSQL: Cómo saber el nombre de la instancia (SYSADMIT.com)
Muchas gracias, me saco de un lió este tutorial.
ResponderEliminarMe alegro que te haya ayudado.
EliminarUn saludo,
Xavi.
Qué grande!! Gracias!!
ResponderEliminarMuchas gracias, me sirvio de mucho..
ResponderEliminar