sql server服务器位置,SQL语句实现查询SQL Server服务器名称和IP地址

获取服务器名称:

SELECT SERVERPROPERTY('MachineName')

select @@SERVERNAME

select HOST_NAME()

获取IP地址可以使用xp_cmdshell执行ipconfig命令:

--开启xp_cmdshell

exec sp_configure'show advanced options', 1

reconfigure with override

exec sp_configure'xp_cmdshell', 1

reconfigure with override

exec sp_configure'show advanced options', 0

reconfigure with override

go

begin

declare @ipline varchar(200)

declare @pos int

declare @ip varchar(40)

set nocount on

set @ip = null

if object_id('tempdb..#temp') is not null drop table #temp

create table #temp(ipline varchar(200))

insert #temp exec master..xp_cmdshell'ipconfig'

select @ipline = ipline

from #temp

where upper(ipline) like '%IPv4 地址%'--这里需要注意一下,系统不同这里的匹配值就不同

if @ipline is not null

begin

set @pos = charindex(':',@ipline,1);

set @ip = rtrim(ltrim(substring(@ipline ,

@pos + 1 ,

len(@ipline) - @pos)))

end

select distinct(rtrim(ltrim(substring(@ipline ,

@pos + 1 ,

len(@ipline) - @pos)))) as ipaddress from #temp

drop table #temp

set nocount off

end

go

但是很多情况下由于安全问题是不允许使用xp_cmdshell,可以通过查询SYS.DM_EXEC_CONNECTIONS :

SELECT SERVERNAME = CONVERT(NVARCHAR(128),SERVERPROPERTY('SERVERNAME'))

,LOCAL_NET_ADDRESS AS 'IPAddressOfSQLServer'

,CLIENT_NET_ADDRESS AS 'ClientIPAddress'

FROM SYS.DM_EXEC_CONNECTIONS WHERE SESSION_ID = @@SPID

相关文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值