……       

       接上回,继续使用动态内存改进负载。

       21、再次选择 AdventureWorks2012 数据库,右键点击并选择新建查询。

微软云计算介绍与实践(实践之十八)_SQL 2012


       22、在新的查询窗口中输入下列文字,然后点击执行查询。

declare @table_max int = 55 * 100000;  --approx 1 GB every 5,500,000 rows

declare @random_id int = cast(rand() * @table_max as int)

select * from bigtable where id > @random_id and id < @random_id + 50000;

微软云计算介绍与实践(实践之十八)_动态内存_02

 

       23、在 Guest01 上使用任务管理器打开性能选项卡,监控内存使用情况。

微软云计算介绍与实践(实践之十八)_Hyper-V_03


       24、留意 SQL Server 消耗的服务器内存数量。

       25、切换到 HyperV03 的 Hyper-V 管理器。


       26、右键点击 Guest01,点击设置,然后将内存值该为下表列出的情况:

       最小内存512MB

       最大内存4096MB 

微软云计算介绍与实践(实践之十八)_Hyper-V_04


       27、点击确定。

       28、重新切换到来宾虚拟机 Guest01。

       29、继续通过 SQL Server Management Studio 执行之前的 SQL 查询。


       30、使用任务管理器的性能选项卡选择内存,查看服务器内存使用情况。

微软云计算介绍与实践(实践之十八)_SQL 2012 _05


       31、请留意系统内存的使用量大幅增加。

微软云计算介绍与实践(实践之十八)_SQL 2012 _06


       32、在 SQL Server Management Studio 中右键点击 Guest01 (SQL SERVER ……) 然后选择属性。

微软云计算介绍与实践(实践之十八)_SQL 2012 _07 


       善于解决问题的小张已经成功实施了动态内存功能,并且在实际应用中看到了效果,SQL 2012 动态消耗了热添加的内存,同时并未停止后台处理的事务。这是一个重大优势,可以快速解决服务器的性能问题,不中断应用程序的运行直接添加所需资源(分配给 SQL Server 实例的内存也动态增加了,这样 SQL Server 实例即可消耗额外分配给操作系统的内存,同时无需让服务器下线)。SQL 2012 与 Server 2012 的Hyper-V 动态内存功能配合使用,即可让任何管理员快速解决与资源限制有关的烦恼。