註冊 SQL Server 的執行個體 (SQL Server 公用程式)

將 SQL Server 執行個體註冊到現有的 SQL Server 公用程式,以 SQL Server 受管理的執行個體形式來監視其效能和組態。公用程式控制點 (UCP) 每隔 15 分鐘會從 SQL Server 受管理的執行個體來收集組態和效能資訊。 這項資訊會儲存在 UCP 的公用程式管理資料倉儲 (UMDW) 中,而 UMDW 檔案名稱為 sysutility_mdw。 SQL Server 效能資料會與原則相比較,有助於識別資源使用瓶頸及合併機會。

在這一版中,UCP 及所有 SQL Server 受管理的執行個體都必須滿足以下需求:

  • SQL Server 必須是 10.50 或更高的版本。

  • SQL Server 執行個體類型必須是 Database Engine。

  • SQL Server 公用程式必須在單一 Windows 網域或具有雙向信任關係的網域上運作。

  • UCP 上的 SQL Server 服務帳戶及 SQL Server 的所有受管理的執行個體都必須具有 Active Directory 使用者的讀取權限。

  • 要註冊的 SQL Server 執行個體不可以是 SQL Azure。

在此版本中,UCP 必須滿足下列需求:

  • SQL Server 執行個體必須是支援版本。 如需 SQL Server 版本所支援功能的清單,請參閱<SQL Server 2012 版本支援的功能>。

  • 我們建議您使用區分大小寫的 SQL Server 執行個體來主控 UCP。

  • 請考慮在 UCP 電腦上採用下列容量規劃建議:

    • 在一般的案例中,UCP 上的 UMDW 資料庫 (sysutility_mdw) 所使用的磁碟空間大約是每年每個 SQL Server 受管理的執行個體 2 GB。 這個估計會根據受管理的執行個體所收集的資料庫和系統物件數目而有所不同。 UMDW (sysutility_mdw) 磁碟空間成長率在頭兩天最高。

    • 在一般的案例中,UCP 上的 msdb 所使用的磁碟空間大約是每個 SQL Server 受管理的執行個體 20 MB。 請注意,這個估計會根據資源使用量原則以及受管理的執行個體所收集的資料庫和系統物件數目而有所不同。 一般來說,當原則違規數目增加,以及動態資源的移動時間間隔增加時,磁碟空間使用量也會增加。

    • 請注意,要等到受管理的執行個體的資料保留期限過期之後,從 UCP 移除受管理的執行個體才會減少 UCP 資料庫所使用的磁碟空間。

在這一版中,SQL Server 的所有受管理的執行個體都必須滿足以下需求:

  • 我們建議如果使用不區分大小寫的 SQL Server 執行個體來主控 UCP,則 SQL Server 的受管理的執行個體也應該不區分大小寫。

  • SQL Server 公用程式監視不支援 FILESTREAM 資料。

如需詳細資訊,請參閱<SQL Server 的最大容量規格>和<SQL Server 2012 版本支援的功能>。

如需有關 SQL Server 公用程式概念的詳細資訊,請參閱<SQL Server 公用程式的功能與工作>。

重要事項重要事項

SQL Server 公用程式收集組與非 SQL Server 公用程式收集組會一起受到支援。 也就是說,當 SQL Server 的受管理的執行個體為 SQL Server 公用程式的成員時,可以受到其他收集組的監視。 但是請注意,受管理的執行個體上的所有收集組都會將其資料上傳到公用程式的管理資料倉儲。 如需詳細資訊,請參閱<在相同 SQL Server 執行個體上執行公用程式和非公用程式收集組的考量事項>和<設定公用程式控制點資料倉儲 (SQL Server 公用程式)>。

精靈步驟

下列章節提供有關精靈工作流程中每一頁的詳細資訊。 按一下連結,可導覽到精靈中頁面的詳細資料。 如需有關這項作業之 PowerShell 指令碼的詳細資訊,請參閱 PowerShell 的範例。

  • 註冊執行個體精靈簡介

  • 指定 SQL Server 的執行個體

  • 連接對話方塊

  • 公用程式收集組帳戶

  • SQL Server 執行個體驗證

  • 註冊執行個體的摘要

  • 正在註冊 SQL Server 的執行個體

註冊執行個體精靈簡介

若要啟動此精靈,請在公用程式控制點上展開 [公用程式總管] 樹狀目錄,然後以滑鼠右鍵按一下 [受管理的執行個體],並選取 [新增受管理的執行個體...]

若要繼續進行,請按 [下一步]

指定 SQL Server 的執行個體

若要從連接對話方塊選取 SQL Server 的執行個體,請按一下 [連接...]。 使用以下格式提供電腦名稱和 SQL Server 執行個體名稱:ComputerName\InstanceName。 如需詳細資訊,請參閱<連接到伺服器 (Database Engine)>。

若要繼續進行,請按 [下一步]

連接對話方塊

在 [連接到伺服器] 對話方塊中,確認伺服器類型、電腦名稱及 SQL Server 執行個體名稱資訊。 如需詳細資訊,請參閱<連接到伺服器 (Database Engine)>。

[!附註]

如果連接已加密,將會使用加密的連接。 如果連接未加密,SQL Server 公用程式會使用加密的連接重新連接。

若要繼續,請按一下 [連接...]

公用程式收集組帳戶

指定要執行 SQL Server 公用程式收集組的 Windows 網域帳戶。 此帳戶會當做 SQL Server 公用程式收集組的 SQL Server Agent Proxy 帳戶來使用。 另外,您也可以使用現有的 SQL Server Agent 服務帳戶。 若要通過驗證需求,請使用下列方針來指定帳戶。

如果您指定 SQL Server Agent 服務帳戶選項:

  • SQL Server Agent 服務帳戶必須是非內建帳戶 (如 LocalSystem、NetworkService 或 LocalService) 的 Windows 網域帳戶。

若要繼續進行,請按 [下一步]

SQL Server 執行個體驗證

在這一版中,以下條件必須在 SQL Server 執行個體上成立,才能註冊到 SQL Server 公用程式中:

條件

更正動作

您必須在指定的 SQL Server 執行個體和 UCP 上擁有系統管理員權限。

您必須使用具有指定之 SQL Server 執行個體和 UCP 上系統管理員權限的帳戶登入。

SQL Server 版本必須支援執行個體註冊。

如需 SQL Server 版本所支援功能的清單,請參閱<SQL Server 2012 版本支援的功能>。

SQL Server UCP 必須啟用 TCP/IP。

在 SQL Server UCP 上啟用 TCP/IP。

SQL Server 的執行個體不能以其他任何 SQL Server UCP 註冊。

如果您指定的 SQL Server 執行個體已經當做現有 SQL Server 公用程式的一部分進行管理,您無法以不同的 UCP 註冊它。

SQL Server 的執行個體不得為 UCP。

如果您指定的 SQL Server 執行個體已經是與您所連接之 UCP 不同的 UCP,您無法在這個 UCP 中註冊它。

SQL Server 的執行個體必須安裝 SQL Server 公用程式收集組。

重新安裝 SQL Server 的執行個體。

必須停止指定之 SQL Server 執行個體上的收集組。

在指定的 SQL Server 執行個體上停止預先存在的收集組。 如果資料收集器已停用,請啟用它,並停止任何執行中的收集組,然後針對建立 UCP 作業重新執行驗證規則。

若要啟用資料收集器:

在 [物件總管] 中,展開 [管理] 節點。

以滑鼠右鍵按一下 [資料收集],然後按一下 [啟用資料收集]

若要停止收集組:

在 [物件總管] 中,依序展開 [管理] 節點、[資料收集][系統資料收集組]

以滑鼠右鍵按一下您要停止的收集組,然後按一下 [停止資料收集組]

訊息方塊會顯示此動作的結果,而此收集組圖示上的紅色圓圈會指示此收集組已經停止。

必須在指定的 SQL Server 執行個體上啟動 SQL Server Agent 服務。

請在指定的 SQL Server 執行個體上啟動 SQL Server Agent 服務。 如果指定的 SQL Server 執行個體是 SQL Server 容錯移轉叢集執行個體,那麼請將 SQL Server Agent 服務設定為手動啟動。 否則,請將 SQL Server Agent 服務設定為自動啟動。

必須在 UCP 上啟動 SQL Server Agent 服務。

在 UCP 上啟動 SQL Server Agent 服務。 如果 SQL Server UCP 是 SQL Server 容錯移轉叢集執行個體,那麼請將 SQL Server Agent 服務設定為手動啟動。 否則,請將 SQL Server Agent 服務設定為自動啟動。

WMI 必須正確設定。

若要疑難排解 WMI 組態,請參閱<疑難排解 SQL Server 公用程式>。

SQL Server Agent Proxy 帳戶必須是 UCP 上的有效 Windows 網域帳戶。

指定有效的 Windows 網域帳戶。 若要確保此帳戶是有效的,請使用 Windows 網域帳戶登入 UCP。

如果您選取 Proxy 帳戶選項,SQL Server Agent Proxy 帳戶必須是指定之 SQL Server 執行個體上的有效 Windows 網域帳戶。

指定有效的 Windows 網域帳戶。 若要確保此帳戶是有效的,請使用 Windows 網域帳戶登入指定的 SQL Server 執行個體。

SQL Server Agent 服務帳戶不得為類似 Network Service 的內建帳戶。

將此帳戶重新指派給 Windows 網域帳戶。 若要確保此帳戶是有效的,請使用 Windows 網域帳戶登入指定的 SQL Server 執行個體。

SQL Server Agent 服務帳戶必須是 UCP 上的有效 Windows 網域帳戶。

指定有效的 Windows 網域帳戶。 若要確保此帳戶是有效的,請使用 Windows 網域帳戶登入 UCP。

如果您選取服務帳戶選項,SQL Server Agent 服務帳戶必須是指定之 SQL Server 執行個體上的有效 Windows 網域帳戶。

指定有效的 Windows 網域帳戶。 若要確保此帳戶是有效的,請使用 Windows 網域帳戶登入指定的 SQL Server 執行個體。

如果驗證結果中有失敗的情況,請更正阻礙問題,然後按一下 [重新執行驗證] 確認電腦組態。

若要儲存驗證報表,請按一下 [儲存報表] 然後指定檔案的位置。

若要繼續進行,請按 [下一步]

註冊執行個體的摘要

摘要頁面會列出有關加入至 SQL Server 公用程式之 SQL Server 執行個體的資訊。

受管理的執行個體設定:

  • SQL Server 執行個體名稱:ComputerName\InstanceName

  • 公用程式收集組帳戶:DomainName\UserName

若要繼續進行,請按 [下一步]

正在註冊 SQL Server 的執行個體

註冊頁面提供此作業的狀態:

  • 正在準備執行個體以進行註冊。

  • 正在建立收集資料的快取目錄。

  • 正在設定公用程式收集組。

若要儲存有關註冊作業的報表,請按一下 [儲存報表] 然後指定檔案的位置。

若要完成精靈,請按一下 [完成]

[!附註]

如果您使用 SQL Server 驗證連接到 SQL Server 執行個體進行註冊,並且指定隸屬不同於 UCP 所在位置的其他 Active Directory 網域的 Proxy 帳戶,那麼執行個體驗證會順利進行,但是註冊作業會失敗且出現下列錯誤訊息:

執行 Transact-SQL 陳述式或批次時發生例外狀況。 (Microsoft.SqlServer.ConnectionInfo)

其他資訊: 無法獲得關於 Windows NT 群組/使用者 '<DomainName\AccountName>' 的資訊,錯誤碼 0x5。 (Microsoft SQL Server,錯誤: 15404)

如需對這個失敗進行疑難排解的詳細資訊,請參閱<疑難排解 SQL Server 公用程式>。

重要事項重要事項

請勿在 SQL Server 受管理的執行個體上變更「公用程式資訊」收集組的任何屬性,也請勿手動開啟/關閉資料收集,因為資料收集是由公用程式代理程式作業所控制。

完成 [註冊執行個體] 精靈之後,請在 SSMS 中按一下 [公用程式總管] 導覽窗格中的 [受管理的執行個體] 節點。 註冊的 SQL Server 執行個體會顯示在 [公用程式總管內容] 窗格中的清單檢視內。

資料收集程序會立即開始,但是最多需要 30 分鐘的時間,資料才會第一次出現在 [公用程式總管] 內容窗格的儀表板和視點內。 資料收集會持續每隔 15 分鐘進行一次。 若要重新整理資料,請以滑鼠右鍵按一下 [公用程式總管] 導覽窗格中的 [受管理的執行個體] 節點,然後選取 [重新整理],或是以滑鼠右鍵按一下清單檢視中的 SQL Server 執行個體名稱,然後選取 [重新整理]

若要從 SQL Server 公用程式中移除受管理的執行個體,請在 [公用程式總管] 導覽窗格中選取 [受管理的執行個體] 來填入受管理的執行個體的清單檢視,然後以滑鼠右鍵按一下 [公用程式總管內容] 清單檢視中的 SQL Server 執行個體名稱,再選取 [將執行個體設為未受管理]

使用 PowerShell 註冊 SQL Server 的執行個體

使用下列範例,將 SQL Server 執行個體註冊到現有的 SQL Server 公用程式:

> $UtilityInstance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\UCP-Name";
> $SqlStoreConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $UtilityInstance.ConnectionContext.SqlConnectionObject;
> $Utility = [Microsoft.SqlServer.Management.Utility.Utility]::Connect($SqlStoreConnection);
> $Instance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\ManagedInstanceName";
> $InstanceConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $Instance.ConnectionContext.SqlConnectionObject;
> $ManagedInstance = $Utility.EnrollInstance($InstanceConnection, "ProxyAccount", "ProxyPassword");

請參閱

概念

SQL Server 公用程式的功能與工作

疑難排解 SQL Server 公用程式

其他資源

監視 SQL Server 公用程式中的 SQL Server 執行個體