详解SQL Server 2008新特性Resource Governor
2009-04-09 10:25:05 来源:WEB开发网相信大家都遇到过,一个服务器上面运行多个数据库的情况,如果1个数据库占用资源过多,很可能直接导致另外一个数据库无法处理,直到超时的情况。过去这种情况基本无法处理(当然不排除使用三方程序处理的方法)。嘿嘿,在新的Sql Server 2008 中,就可以完美的解决这个问题了。答案就是Resource Governor。
Resource Governor可以通过创建资源池(Resource Pool)的方式,对不同资源池分别分配服务器资源(CPU,内存),这里设置的是,资源池最繁忙时期的分配值。简单的说,现在我有两个数据库,DataBaseA和DataBaseB,那么我们可以创建两个资源池PoolA和PoolB,给PoolA分配10%的CPU和内存,PoolB分配90%的CPU和内存。那么当DataBaseA和DataBaseB都繁忙的时候,系统会分别分配相应的资源给他们,让他们都能够完成自己的工作(当然,性能可能有所下降,毕竟只使用10%的资源),从而避免了高并发性时,资源独占的情况。很好吧,下面我们就通过一个实例来给大家演示一下。
1. 首先可以查看一下当前资源池的配置情况
USE master;
GO
SELECT * FROM sys.dm_resource_governor_configuration;
GO
如果如上图所示,那么说明目前没有创建任何资源池。(创建资源池的时候需要绑定一个classifier的函数,如果绑定了,会显示函数的ObjectID)
2. 创建2个资源池MarketingPool和DevelopmentPool,
CREATE RESOURCE POOL MarketingPool
WITH (MAX_CPU_PERCENT = 10);
GO
CREATE RESOURCE POOL DevelopmentPool
WITH (MAX_CPU_PERCENT = 90);
GO
- ››SQL Server 2008 R2 下如何清理数据库日志文件
- ››详解android 多媒体数据库
- ››sqlite 存取中文的解决方法
- ››详解Linux 系统命令及其使用
- ››SQL2005、2008、2000 清空删除日志
- ››详解什么是智能dns解析
- ››SQL Server 2005和SQL Server 2000数据的相互导入...
- ››sql server 2008 在安装了活动目录以后无法启动服...
- ››详解Win 8系统登录密码
- ››sqlserver 每30分自动生成一次
- ››sqlite 数据库 对 BOOL型 数据的插入处理正确用法...
- ››sql server自动生成批量执行SQL脚本的批处理
更多精彩
赞助商链接