如果要以编程方式查找此信息,可以调用SqlDataSourceEnumerator.GetDataSources 方法:
# PowerShell example
[System.Data.Sql.SqlDataSourceEnumerator]::Instance.GetDataSources()
Run Code Online (Sandbox Code Playgroud)
关于此调用的一些注意事项,并记录在上述参考文献中:
由于 SqlDataSourceEnumerator 用于在网络上定位数据源的机制的性质,该方法不会总是返回可用服务器的完整列表,并且每次调用时该列表可能都不相同。如果您打算使用此功能让用户从列表中选择服务器,请确保您始终还提供一个选项来键入不在列表中的名称,以防服务器枚举未返回所有可用服务器. 此外,此方法可能需要大量时间来执行,因此在性能至关重要时调用它时要小心。
您可以考虑的另一件事是访问所有服务器(同样,非常耗时)并获取名称中包含已知 SQL Server 字符串的所有服务。
Get-Service -Name "mssql*"
Run Code Online (Sandbox Code Playgroud)
如果您遍历所有服务器并获取所有以 开头的服务,"MSSQL"您将获得一个基本列表。不过,您可能必须手动过滤掉它。
在微软评估和规划(MAP)工具包是微软的产品,专门设计用于执行发现并帮助确定授权的服务器。
有一个不错的网络广播可用,显示一些罐头报告,看起来它们可能符合您的目的。
您的里程可能会有所不同 - 在复杂的网络上执行发现可能是一场噩梦!
| 归档时间: |
|
| 查看次数: |
35961 次 |
| 最近记录: |