有沒有一種'很好的方式來檢查網絡主機是否啓動 利用'普通'SQL?我想到了一些特定於MS-SQL的 命令,或者也許是從服務器本身的ping腳本 獲取返回值。MS SQL ping外部服務器
有沒有人有這個想法?
有沒有一種'很好的方式來檢查網絡主機是否啓動 利用'普通'SQL?我想到了一些特定於MS-SQL的 命令,或者也許是從服務器本身的ping腳本 獲取返回值。MS SQL ping外部服務器
有沒有人有這個想法?
有兩種可能的方式把你的答案是:你要知道,如果一個SQL服務器的任意主機
2.您希望使用一些查詢從SQL服務器ping一個任意主機上運行 1。
你可以使用dariom的答案。 1a。如果您想從另一個SQL Server查詢一個SQL Server,最好使用SQL Server的「Linked Servers」功能。
您可以使用master.dbo.xp_cmdshell存儲過程來執行PING,然後將結果作爲文本行和狀態碼返回。
EXEC master.dbo.xp_cmdshell '平192.168.1.1'
我假設你的意思是「普通」 SQL,而不是「佩林」 :-)
如果你想看看SQL是在主機上運行,你可以嘗試通過使用連接到SQL Browser ServiceSSRP (SQL Server Resolution Protocol)(但這需要在服務器上安裝並運行)。
你可以嘗試一個「最佳猜測」的方法,並建立到端口1433(默認端口SQL Server的數據庫引擎)的TCP連接。如果端口處於打開狀態,則可能是SQL Server正在偵聽 - 然後您可以嘗試連接到SQL Server並執行命令(如SELECT @@VERSION
或特定於您的應用程序的某個內容)。這種方法的問題:
從本質上講,最好的猜測方法只能在你控制的SQL服務器上真正工作。
的問題是:爲什麼* *你想做到這一點? – Tomalak 2009-07-20 13:45:11
我的SQL服務器存儲指向我的外部FTP服務器提供的內容的鏈接。我希望我的服務器檢查所有X分鐘是否ftp框已啓動,如果不是運行更新並將相關內容標記爲「temp」。無法使用'。 – KB22 2009-07-20 13:53:24
不應該在應用程序層而不是數據庫層完成此操作嗎? – Tomalak 2009-07-20 13:55:27