当 SQL 仅存在于网络上时的 SQL 命令

当 SQL 仅存在于网络上时的 SQL 命令

我正在尝试使用命令提示符中的命令查找网络上所有 SQL 服务器的列表osql -L。仅当我正在使用的计算机上安装了 SQLServer 时,此命令才有效。当该特定计算机上未安装 SQLServer,但安装在网络上的某个位置时,是否有任何方法可以运行此命令?

谢谢你!

编辑:我正在用 Java 编写程序,因此在 .NET 框架中可以进行的简单枚举对我来说不起作用。

答案1

如果您正在寻找一个可以运行并获取输入的命令行程序,请查看 SQLPing3 命令行。我知道它说它是 alpha 版本,但它工作正常。它将使用所有已知方法来发现 SQL Server,这超出了 osql -L(它只是执行 udp/1434 广播)。

SQLPing3 命令行(以及来自 SQLSecurity.com 的其他免费工具)

答案2

看看这个链接
http://www.sqldbatips.com/showarticle.asp?ID=45
此链接显示了如何通过 .Net 框架通过代码执行此操作,如果您正在寻找使用其他编程语言或平台的方法,请说

答案3

根据该实用程序的文档,它应该显示本地服务器以及网络上的服务器。问题可能是 SQL Browser 服务未运行,而该服务用于获取网络上所有 SQL Server 的列表。

SQL 浏览器服务:http://msdn.microsoft.com/en-us/library/ms181087.aspx

答案4

在依赖 SMO 对象返回网络上可用的 SQL 实例列表之前,您应该阅读有关SqlDataSourceEnumerator.它可能会返回不完整或不一致的结果。

相关内容