Como descobrir os usuários conectados no SQL Server

Você já precisou saber quem está conectado atualmente nas bases do SQL Server?


Algumas vezes quando é necessário atualizar a base de testes ou identificar se existe alguma conexão presa, sempre fica aquela dúvida de quem está travado ou impedindo algum processo.

Então para identificar quem está conectado no SQL Server, é necessário fazer um join entre sysprocesses, sysdatabases e sysusers.

Abaixo a query que foi desenvolvida.

SELECT
	processos.login_time AS [Data Inicio],
	processos.spid AS [SPID],
	bases.name AS [Banco],
	processos.loginame AS [Usuario],
	processos.hostname AS [Hostname],
	processos.program_name AS [Programa],
	processos.cmd AS [Comando]
FROM
	sysprocesses processos
	INNER JOIN sysdatabases bases ON (
		processos.dbid=bases.dbid
	)
	INNER JOIN sysusers usuarios ON (
		processos.uid=usuarios.uid
	)
ORDER BY
	Banco

Referência:
planningit.wordpress.com

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan Atilio (Daniel Atilio)
Especialista em Engenharia de Software pela FIB. Entusiasta de soluções Open Source. E blogueiro nas horas vagas.

2 Responses

  1. wilson disse:

    È possível usar este mesmo sistema para desbloquear o Windows quando o mesmo trava as vezes nao da para fazer o destravamento por vias normais,( no item quatro se trocaria e colocaria Windows 32 ou coisa que valha, explicando que sou um curioso !

Deixe uma resposta