use master go create resource pool poolAdhoc with ( min_cpu_percent=10,max_cpu_percent=30, min_memory_percent=15,max_memory_percent=25 --min_iops_per_volume=0,max_iops_per_volume=2111111111 ); create resource pool poolReports with ( min_cpu_percent=20,max_cpu_percent=35, min_memory_percent=15,max_memory_percent=45 --min_iops_per_volume=0,max_iops_per_volume=2111111111 ); create resource pool poolAdmin with ( min_cpu_percent=15,max_cpu_percent=25, min_memory_percent=15,max_memory_percent=25 );
2:建立工做负载组而且关联以上三个资源池数据库
create workload group groupAdhoc using poolAdhoc; create workload group groupReports using poolReports; create workload group groupAdmin using poolAdmin;
3:建立用户定义的分类函数:服务器
create function rgtest() returns sysname with schemabinding as begin declare @pg_name as sysname if(user_name()='sa') set @pg_name='poolAdhoc' --if (app_name()) return @pg_name end; go
4:将用户自定义的分类函数注册到资源调控器app
alter resource governor with(classifier_function=dbo.rgtest);
5,:启用资源管理器函数
alter resource governor reconfigure
Resource Governor 可以自动判断资源分配比例,若是没有竞争资源池的话,那么会分配100%资源应用,若是竞争激烈,会按照比例分配。从而使得各个资源池中的对象都可以使用必定的服务器资源完成本身的工做,从而能够使得咱们预测系统的最差状况,加强对数据库的管理性。spa