none
如何查看本机IP? RRS feed

  • 问题

  • 请问各位大侠:

    有没有什么系统函数可以直接查看SQL本机IP地址,就像@@servername可以直接查看机器名一样?

    谢谢了。


    Thanks, Yoyo Yu
    2010年11月23日 4:05

答案

全部回复

  • No such function, can try xp_cmdshell 'ipconfig'.
    2010年11月23日 4:06
  • Hi rmiao,

    那sys.dm_exec_connections这个系统表的local_net_address字段,怎么可以唯一标识本机IP?

    我看那些session_id都是从51开始,这些都是用户的session(系统为50以内),假如没有任何用户连线,那岂不是看不到local_net_address字段值?

    谢谢


    Thanks, Yoyo Yu
    2010年11月23日 4:21
  • That's why it's not reliable, you'll not see any ip address if client connect to server with named pipes.
    2010年11月23日 14:53

  • 可以间接通过连接进程来反查:

    select distinct @@SERVERNAME as servername ,c.local_net_address,c.local_tcp_port from sys.dm_exec_connections c inner join sys.dm_exec_sessions S on c.session_id=s.session_id
    where s.host_name<>@@SERVERNAME

    以上返回的即是本机的IP Address,Tcp Port,Server Name等信息.

    若本机无连接用户进程,那么只能通过Ping @@ServerName的方式获取吧.

    • 已建议为答案 SOSOben 2013年5月30日 3:10
    2010年12月7日 7:02