同時對多部伺服器執行陳述式

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

本文說明如何透過下列方法,在 SQL Server 中同時查詢多部伺服器:建立本機伺服器群組,或中央管理伺服器及一或多個伺服器群組,以及這些群組內部一或多個已註冊的伺服器,然後查詢完整的群組。

此查詢傳回的結果可以結合到單一結果窗格中,也可以在不同的結果窗格中傳回。 結果集可能包括額外資料行,以顯示伺服器名稱及查詢在每部伺服器上所使用的登入。 中央管理伺服器和從屬伺服器可以使用 Windows 驗證來註冊。 本機伺服器群組中的伺服器可以使用 Windows 驗證或 SQL Server 驗證進行註冊。

在您執行下列程序之前,請先建立中央管理伺服器和伺服器群組。 如需詳細資訊,請參閱建立中央管理伺服器與伺服器群組 (SQL Server Management Studio)

權限

由於中央管理伺服器所維護的連接會在使用者的內容中執行,所以使用 Windows 驗證時,已註冊之伺服器上的有效權限可能會不同。 例如,使用者可能是 SQL Server A 執行個體上的系統管理員 (sysadmin) 固定伺服器角色成員,但是在 SQL Server B 執行個體上的權限卻有所限制。

同時針對多個組態目標執行陳述式

  1. 在 SQL Server Management Studio 的 [檢視] 功能表上,選取 [已註冊的伺服器]。

  2. 展開中央管理伺服器,以滑鼠右鍵按一下伺服器群組,指向 [連線],然後選取 [新增查詢]。

  3. 在查詢編輯器中,鍵入類似下方的 Transact-SQL 陳述式並加以執行:

    USE master
    GO
    SELECT * FROM sys.databases;
    GO
    

    根據預設,結果窗格將會結合伺服器群組中所有伺服器的查詢結果。

變更多伺服器結果選項

  1. 在 Management Studio 的 [工具] 功能表上,選取 [選項]。

  2. 依序展開 [查詢結果] 和 [SQL Server],然後選取 [多伺服器結果]。

  3. 在 [多伺服器結果] 頁面上,指定想要的選項設定,然後選取 [確定]。

另請參閱