通过SQL查询SQL服务器和客户端IP地址

时间:2024-02-15 19:47:40

-- Author : htl258(Tony)

-- Date   : 2010-06-26 23:02:30

-- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)

--          Jul  9 2008 14:43:34

--          Copyright (c) 1988-2008 Microsoft Corporation

--          Developer Edition on Windows NT 5.1 <X86> (Build 2600: Service Pack 2)

-- Blog   : http://blog.csdn.net/htl258 (转载保留此信息)

-- Subject: 通过SQL查询SQL服务器和客户端IP地址

----------------------------------------------------------------------------------

 

--通过SQL查询SQL服务器IP地址(适用于SQL2000以上版本,查询服务器所有网卡的IP)

SELECT STUFF([output],1,CHARINDEX(\':\',[output]),\'\') AS [服务器IP地址]

FROM OPENROWSET(

    \'SQLOLEDB\',

    \'Server=.;Trusted_Connection=yes\',

    \'SET FMTONLY OFF;

    EXEC master..xp_cmdshell \'\'ipconfig/all\'\'\'

) AS t

WHERE [output] LIKE \'%IP Address%\'

 

/*

服务器IP地址

----------------

192.168.16.235

192.168.10.140

 

(2 行受影响)

*/

 

--通过SQL查询SQL服务器和客户端IP地址(适用于SQL2005以上版本)

 

SELECT local_net_address 服务器IP地址,

       local_tcp_port AS 服务端口,

       client_net_address AS 客户端IP地址

FROM sys.dm_exec_connections

WHERE session_id = @@SPID

--通过SQL查询SQL服务器和客户端IP地址(适用于SQL2008以上版本)

SELECT CONNECTIONPROPERTY(\'local_net_address\') AS 服务端IP地址,

 

       CONNECTIONPROPERTY(\'local_tcp_port\') AS 服务端口,

       CONNECTIONPROPERTY(\'client_net_address\') AS 客户端IP地址