是否有'好'的方法来检查网络主机是否已启动 利用'普通'SQL?我想到了一些特定的MS-SQL 命令或者一些从ping脚本获取返回值 在服务器本身。
有人对此有所了解吗?
答案 0 :(得分:1)
有两种方法可以回答你:
1.您想知道SQL服务器是否在任意主机上运行
2.您希望使用某个查询从SQL服务器ping任意主机。
你可以使用dariom的答案。 1A。如果要从另一个SQL服务器查询一个SQL服务器,最好使用SQL Server的“链接服务器”功能。
您可以使用master.dbo.xp_cmdshell存储过程执行PING,然后将结果作为文本行和状态代码返回。
EXEC master.dbo.xp_cmdshell'ping 192.168.1.1'
答案 1 :(得分:-1)
我假设你的意思是“普通”SQL而不是“palin”: - )
如果您正在尝试查看SQL是否在主机上运行,您可以尝试使用SQL Browser Service连接到SSRP (SQL Server Resolution Protocol)(但这需要在服务器上安装并运行)
您可以尝试“最佳猜测”方法,并与端口1433(默认端口SQL Server的数据库引擎)建立TCP连接。如果端口是打开的,则可能是SQL Server正在侦听 - 然后您可以尝试连接到SQL Server并执行命令(如SELECT @@VERSION
或特定于您的应用程序的某些内容)。这种方法存在的问题:
基本上,最好的猜测方法只适用于您控制的SQL Server。