16 febrero 2011

Monitorear conexiones activas en SQL Server 2008

Desde el Management Studio, la opción se encuentra dándole botón derecho sobre el nombre del servidor al que nos estamos conectando, en la 5 opción del menú contextual que debe de aparecer, esta el Activity Monitor.

Ahora que si eres de la Vieja Escuela, tira el mouse y ejecuta el comando SP_WHO2, este te dirá los procesos activos en el servidor de SQL, la aplicacion que lo genero, el host y un par de etc. interesantes, como siempre, la ayuda en linea de SQL tiene mas información de la que podria proporcionar aqui.


Bueno, ahora lo interesante, yo quiero saber las conexiones activas con una consulta, ya sea porque el sistema que estoy haciendo me lo requiera o porque me viene en gana:


SELECT 
      spid,
      master.dbo.sysprocesses.status,
      hostname,
      program_name,
      cmd,
      cpu,
      physical_io,
      blocked,
      master.dbo.sysdatabases.name,
      loginame
FROM   
      master.dbo.sysprocesses INNER JOIN
      master.dbo.sysdatabases ON
            sys.sysprocesses.dbid = sys.sysdatabases.dbid
ORDER BY spid

Esta consulta nos regresara las conexiones activas, la consulta la he provado en SQL 2005 y SQL 2008

Espero te sirva la información