在前一章已經示範了如何使用SSMS來配置資源調控器。但是作為DBA,總有需要寫腳本的時候,因為它可以重用及擴充。并且可以在不同伺服器快速部署。
下面來示範如何實作:
1、 打開ssms,連到SQLServer。確定登入賬号有CONTROLSERVER的權限。
2、 運作下面腳本,删除前面建立過的資源調控器對象:
3、 現在執行語句來建立下面對象,此處的分類函數參考上一章:
4、 為了檢查是否建立成功,可以通過DMV查詢,這裡用到下面兩個DMV來查詢:sys.dm_resource_governor_resource_pools 、sys.dm_resource_governor_workload_groups
5、 從截圖上可以看出已經建立成功:
上面的步驟可以通過ssms操作時,界面中上部的【腳本】按鈕生成,但是由于ssms生成的T-SQL有些不是最優化的,是以如果你不是不懂,那就自己寫吧。
下面幾個配置選項在本文中用到,簡要說明一下:
1、 IMPORTANCE:定義工作負荷組中對請求處理的重要性,其值為LOW/MEDIUM/HIGH。
2、 GROUP_MAX_REQUESTS:定義在一個工作負荷組中最大并行執行的請求數量。
3、 MAX_DOP:在一個工作負荷組中并行請求的最大并行度。
4、 REQUEST_MAX_MEMORY_GRANT_PERCENT:對于一個工作負荷組中,一個單獨的請求能用的最大記憶體數。
5、 REQUEST_MAX_CPU_TIME_SEC: 對于一個工作負荷組中,一個單獨的請求可以使用的最大秒數。
6、 REQUEST_MEMORY_GRANT_TIMEOUT_SEC: 指定查詢等待記憶體授予(工作緩沖區記憶體)變為可用的最長時間(以秒為機關)。