原文:第十九章——使用资源调控器管理资源(2)——使用T-SQL配置资源调控器

前言:

在前一章已经演示了如何使用SSMS来配置资源调控器。但是作为DBA,总有需要写脚本的时候,因为它可以重用及扩展。并且可以在不同服务器快速部署。

下面来演示如何实现:

步骤:

1、  打开ssms,连到SQLServer。确保登录账号有CONTROLSERVER的权限。

2、  运行下面脚本,删除前面创建过的资源调控器对象:

USE master
GO
DROP WORKLOAD GROUP rg_WebApp
DROP RESOURCE POOL rp_WebApp
DROP WORKLOAD GROUP rg_ReportApp
DROP RESOURCE POOL rp_ReportApp
GO

3、  现在执行语句来创建下面对象,此处的分类函数参考上一章:

USE master
GO CREATE RESOURCE POOL [rp_WebApp]
WITH
(
MIN_CPU_PERCENT=50,
MAX_CPU_PERCENT =100,
MIN_MEMORY_PERCENT =50,
MAX_MEMORY_PERCENT =100
)
GO CREATE WORKLOAD GROUP [rg_WebApp]
WITH
(
GROUP_MAX_REQUESTS=0,
IMPORTANCE=MEDIUM,
REQUEST_MAX_CPU_TIME_SEC=300,
REQUEST_MAX_MEMORY_GRANT_PERCENT=25,
REQUEST_MEMORY_GRANT_TIMEOUT_SEC=0,
MAX_DOP=0
)USING [rp_WebApp]
GO CREATE RESOURCE POOL [rp_ReportApp]
WITH
(
MIN_CPU_PERCENT=25,
MAX_CPU_PERCENT =100,
MIN_MEMORY_PERCENT =25,
MAX_MEMORY_PERCENT =100
)
GO CREATE WORKLOAD GROUP [rg_ReportApp]
WITH
(
GROUP_MAX_REQUESTS=0,
IMPORTANCE=MEDIUM,
REQUEST_MAX_CPU_TIME_SEC=300,
REQUEST_MAX_MEMORY_GRANT_PERCENT=25,
REQUEST_MEMORY_GRANT_TIMEOUT_SEC=0,
MAX_DOP=0
)USING [rp_ReportApp]
GO ALTER RESOURCE GOVERNOR
WITH (CLASSIFIER_FUNCTION=[dbo].[RGClassifier]
);
GO ALTER RESOURCE GOVERNOR RECONFIGURE
GO

4、  为了检查是否创建成功,可以通过DMV查询,这里用到下面两个DMV来查询:sys.dm_resource_governor_resource_pools 、sys.dm_resource_governor_workload_groups

SELECT  pool_id ,
name
FROM sys.dm_resource_governor_resource_pools SELECT group_id ,
name ,
pool_id
FROM 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: 指定查询等待内存授予(工作缓冲区内存)变为可用的最长时间(以秒为单位)。

第十九章——使用资源调控器管理资源(2)——使用T-SQL配置资源调控器的更多相关文章

  1. 第十九章——使用资源调控器管理资源(1)——使用SQLServer Management Studio 配置资源调控器

    原文:第十九章--使用资源调控器管理资源(1)--使用SQLServer Management Studio 配置资源调控器 本系列包含: 1. 使用SQLServer Management Stud ...

  2. 第十九章 Django的ORM映射机制

    第十九章 Django的ORM映射机制 第一课 Django获取多个数据以及文件上传 1.获取多选的结果(checkbox,select/option)时: req.POST.getlist('fav ...

  3. 20190908 On Java8 第十九章 类型信息

    第十九章 类型信息 RTTI(RunTime Type Information,运行时类型信息)能够在程序运行时发现和使用类型信息. Java 主要有两种方式在运行时识别对象和类信息: "传 ...

  4. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十九章:法线贴图

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十九章:法线贴图 学习目标 理解为什么需要法线贴图: 学习法线贴图如 ...

  5. Python之路【第十九章】:Django进阶

    Django路由规则 1.基于正则的URL 在templates目录下创建index.html.detail.html文件 <!DOCTYPE html> <html lang=&q ...

  6. Gradle 1.12用户指南翻译——第四十九章. Build Dashboard 插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  7. Gradle 1.12翻译——第十九章. Gradle 守护进程

    有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...

  8. Gradle 1.12用户指南翻译——第二十九章. Checkstyle 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...

  9. Gradle 1.12用户指南翻译——第三十九章. IDEA 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

随机推荐

  1. 使用JS模拟出Map对象

    近期要做的一个项目,支持方提供的一个Map方法,用着相当能够,功能稍有欠缺,因此我为之做了扩展,下面是代码: function Map() { this.elements = new Array(); ...

  2. PHP实现快速排序算法

    快速排序(Quick Sort)是对冒泡排序的一种改进,属不稳定排序算法,由东尼·霍尔在1962年提出.快速排序基本步骤:从数列中挑出一个元素(一般称为称为“基准”),通过一趟排序将要排序的数据分割成 ...

  3. JSTL自定义标签库 (二)

    要定义自己的标签,首先写个java类,extends TagSupport  或者 implements Tag ,然后在类体里实现自己想要的方法,或者覆盖父类的方法. 我定义的MyTag代码如下: ...

  4. @font-face(css3属性)实如今网页中嵌入随意字体

    @font-face语法规则 @font-face { font-family: <YourWebFontName>; src: <source> [<format> ...

  5. Android:主题(Theme)

    1.主题和样式的区别主要区别在 主题不能作用于单个View组建,主题应该对整个应用中的所有Activity起作用或者对指定的Activity起作用. 主题定义的格式应该是改变窗口的外观格式,例如窗口变 ...

  6. OpenCV基础篇之画图及RNG随机数对象

    程序及分析 /* * FileName : random_gen.c * Author : xiahouzuoxin @163.com * Version : v1.0 * Date : Tue 29 ...

  7. JDBC连接数据库和释放连接

    用久了hibernate现在对于JDBC是怎么实现数据库的连接和释放,所以特地总结下关于JDBC的知识,目的是用于提醒自己很多Java的基础知识需要健全. package com.ssh.action ...

  8. UVA 1513 - Movie collection(树状数组)

    UVA 1513 - Movie collection option=com_onlinejudge&Itemid=8&page=show_problem&category=5 ...

  9. VirtualBox安装ubuntu14.04和文件共享

    因为机器的VMware使用很卡,占用更多的内存,所以我想,以取代VirtualBox.已安装ubuntu14.04使用与VMware在相同的. VirtualBox下载链接:https://www.v ...

  10. 关于产品的一些思考——腾讯之QQ音乐

    --------------------2014.5.11-------------------- 原来一直使用小米手机自带的音乐播放器,除了搜歌下载不方便,其它的还好(省电是最大的长处),用过Jin ...