SQL Server-使用可用性组侦听器查询以获取服务器的IP地址

时间:2019-07-01 22:00:34

标签: sql-server

还有另一个类似的问题,最常见的答案是使用CONNECTIONPROPERTY('local_net_address')。 Microsoft文档说,这将返回“目标”地址。因此,当我使用AG侦听器进行连接时,无论我实际连接到哪个SQL Server,local_net_address都会返回AG侦听器IP。那么在使用AG侦听器时如何获取SQL Server IP地址?

这将在安全的环境中运行,并且xp_cmdshell不是一个选择。

1 个答案:

答案 0 :(得分:4)

  

使用AG侦听器时的SQL Server IP地址

一台服务器不只有一个IP地址。例如,您用于连接的AG侦听器IP是服务器的附加IP地址。它通常与服务器可能具有的 other IP地址一样好。

在最常见的配置中,SQL Server对服务器的IP完全不知道。 SQL Server只是侦听端口1433 所有 IP。

您可以查询服务器名称和域,并构造DNS查找以查找与该服务器名称关联的IP:

select  DEFAULT_DOMAIN() domain, serverproperty('ComputerNamePhysicalNetBIOS') serverName