查询连接到数据库的所有连接

SELECT * FROM 
[Master].[dbo].[SYSPROCESSES] WHERE [DBID] 
IN 
(
  SELECT 
   [DBID]
  FROM 
   [Master].[dbo].[SYSDATABASES] 
  WHERE 
   NAME='你要查询的数据库的名称'
) order by hostname

打印当前连接到数据库的所有ip

    DECLARE @IP_Address varchar(255);
SELECT @IP_Address=client_net_address
FROM sys.dm_exec_connections
WHERE Session_id = '你要查询的sessionid';
print @IP_Address
DECLARE @IP_Address varchar(255);
DECLARE @each varchar(50);
DECLARE  totalcur CURSOR
      LOCAL SCROLL
           FOR  
      SELECT spid FROM 
[Master].[dbo].[SYSPROCESSES] WHERE [DBID] 
IN 
(
  SELECT 
   [DBID]
  FROM 
   [Master].[dbo].[SYSDATABASES] 
  WHERE 
   NAME='你要查询的数据库的名称'
) 
open totalcur
FETCH NEXT FROM totalcur into  @each 
WHILE @@FETCH_STATUS=0
  BEGIN
     
SELECT @IP_Address=client_net_address
FROM sys.dm_exec_connections
WHERE Session_id =@each ;
print @IP_Address
     FETCH NEXT FROM totalcur into @each
   END
  CLOSE  totalcur
DEALLOCATE  totalcur

猜你喜欢

转载自blog.csdn.net/u010178308/article/details/85333878