將 SQL Server 實例註冊至現有的 SQL Server 公用程式,以監視其效能和設定,作為 SQL Server 的受控實例。 公用程式控制點 (UCP) 會每隔 15 分鐘從受控 SQL Server 實例收集組態和效能資訊。 這項資訊會儲存在UCP上的公用程式管理數據倉儲中;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 2014 版本支援的功能。
我們建議UCP是由區分大小寫的SQL Server 實例所裝載。
請考慮在 UCP 電腦上規劃容量的下列建議:
在一般案例中,UCP 上 UMDW 資料庫 (sysutility_mdw) 所使用的磁碟空間大約是每個受控 SQL Server 實例每年 2 GB。 此估計值可能會因受控實例所收集的資料庫和系統物件數目而有所不同。 UMDW (sysutility_mdw) 磁碟空間增長率在前兩天最高。
在一般案例中,UCP 上 msdb 使用的磁碟空間大約是每個 SQL Server 受控實例 20 MB。 請注意,此估計值可能會因資源使用率原則以及受控實例所收集的資料庫和系統對象數目而有所不同。 一般而言,隨著政策違規次數的增加以及變動性資源移動時間範圍持續時間的增加,磁碟空間使用量會增加。
請注意,從 UCP 移除受控實例,在受控實例的數據保留期間到期之前,不會減少 UCP 資料庫所使用的磁碟空間。
在此版本中,SQL Server 的所有受控實例都必須滿足下列需求:
如果 UCP 是由不區分大小寫的 SQL Server 實例所裝載,則 SQL Server 的受控實例也應該不區分大小寫。
SQL Server 公用程式監視不支援 FILESTREAM 數據。
如需詳細資訊,請參閱SQL Server 的最大容量規格和SQL Server 2014 各版本支援的功能。
如需 SQL Server 公用程式概念的詳細資訊,請參閱 SQL Server 公用程式功能和工作。
這很重要
SQL Server 公用程式收集組與非 SQL Server 公用程式收集組並存支援。 也就是說,當 SQL Server 是 SQL Server 公用程式的成員時,其他收集組可以監視 SQL Server 的受控實例。 不過請注意,受控實例上的所有收集組都會將其數據上傳至公用程式管理數據倉儲。 如需詳細資訊,請參閱在 相同 SQL Server 實例上執行公用程式和非公用程式收集組的考慮 ,以及 設定公用程式控制點數據倉儲 (SQL Server 公用程式) 。
精靈步驟
下列各節提供精靈工作流程中每個頁面的詳細資訊。 按兩下連結以瀏覽至精靈中頁面的詳細數據。 如需此作業之 PowerShell 腳本的詳細資訊,請參閱 PowerShell 範例。
註冊實例精靈簡介
若要啟動精靈,請展開公用程式控制點上的 [公用程式總管] 樹狀結構,以滑鼠右鍵單擊 受控實例,然後選取 [ 新增受控實例...]。
若要繼續進行,請按 [下一步] 。
指定 SQL Server 的實例
若要從 [連線] 對話框中選取 SQL Server 的實例,請按兩下 [ 連接...]。以 ComputerName\InstanceName 格式提供電腦名稱和 SQL Server 實例名稱。 如需詳細資訊,請參閱 連線到伺服器 (Database Engine)。
若要繼續進行,請按 [下一步] 。
連接對話框
在 [連接到伺服器] 對話框中,確認伺服器類型、計算機名稱和 SQL Server 實例名稱資訊。 如需詳細資訊,請參閱 連線到伺服器 (Database Engine)。
備註
如果連線已加密,則會使用加密的連線。 如果未加密連線,SQL Server 公用程式會使用加密的連線重新連線。
若要繼續,請按兩下 [ 連線...]。
公用事業收費帳戶
指定要執行 SQL Server 公用程式收集組的 Windows 網域帳戶。 此帳戶用作 SQL Server Utility 收集集的 SQL Server Agent 代理帳戶。 或者,您可以使用現有的 SQL Server Agent 服務帳戶。 若要通過驗證需求,請使用下列指導方針來指定帳戶。
如果您指定 SQL Server Agent 服務帳戶選項:
- SQL Server Agent 服務帳戶必須是 Windows 網域帳戶,而不能是內建帳戶,例如 LocalSystem、NetworkService 或 LocalService。
若要繼續進行,請按 [下一步] 。
SQL Server 實例驗證
在此版本中,SQL Server 實例上必須符合下列條件,才能註冊到 SQL Server 公用程式:
| 狀況 | 更正動作 |
|---|---|
| 您必須在指定的 SQL Server 實例和 UCP 上擁有系統管理員許可權。 | 使用具有指定 SQL Server 實例和 UCP 之系統管理員許可權的帳戶登入。 |
| SQL Server 版本必須支持實例註冊。 | 如需 SQL Server 版本所支援的功能清單,請參閱 SQL Server 2014 版本支援的功能。 |
| 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 服務帳戶不能是內建帳戶,例如網路服務。 | 將帳戶重新指派給 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 實例名稱],然後選取 [將實例設為 Unmanaged]。
使用 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 公用程式進行疑難解答