SQL Server2012中的Indirect CheckPoint

来源:未知 责任编辑:责任编辑 发表时间:2014-05-10 12:26 点击:

简介
    SQL Server2012新增的Indirect CheckPoint允许CheckPoint的恢复间隔设置到数据库级别,而不是以前那样实例级别。
    在数据库级别设置的恢复时间以秒为单位,而不是在实例级别的以分钟为单位。这可以更精确的保证数据库Recovery的最大时间。
 
配置Indirect CheckPoint
    Indirect Checkpoint是数据库级别的。在SQL SERVER中,包括Contained Database,SQL Server把一些设置从实例级别转到了数据库级别。
    按照MSDN上对Indirect CheckPoint的描述,我对Indirect CheckPoint的理解是独立于实例级别CheckPoint的的额外线程。仅仅负责其所在的数据库。因此带来的好处可以归结如下。
    1.更少的数据库恢复时间(CheckPoint间隔小了,自然恢复时间就少了)
    2.更精确的恢复时间。现在不仅仅CheckPoint的范围缩小了,并且最大恢复时间是以秒为单位。
    3.由于这个Indirect CheckPoint线程将其所负责数据库范围内的Dirty Page写入磁盘,所以实例级别的CheckPoint可以减少对磁盘的一次性写入量。从而减少了实例级别CheckPoint的负载
  
  
    但是,设置Indirect CheckPoint保证数据库Recovery时间尽可能短的同时,由于恢复间隔可能变短,在OLTP环境下造成更多的磁盘写入,有可能给I/O造成额外的负担
 
    下面来看配置Indirect CheckPoint,我们可以通过SSMS或是T-SQL进行配置
     使用SSMS配置Indirect CheckPoint如图1所示。
   

    图1.在SSMS中设置CheckPoint
 
    也可以通过设置数据库的TARGET_RECOVERY_TIME选项来设置恢复时间,如代码1所示。
  
ALTER DATABASE Test

SET TARGET_RECOVERY_TIME = 32 SECONDS;
     代码1.设置数据库的TARGET_RECOVERY_TIME选项



作者 宋沄剑

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • sql常见面试题
    • SQL SERVER 2005性能之跟踪
    • SQL编程(一)
    • LINUX上RMAN自动备份脚本
    • sql server面试题
    • 浅谈SQL Server中的事务日志(三)----在简单恢复模式下日志的角色
    • 如何将多个SQL查询统计结果一次显示出来
    • SQL小技巧系列 --- 行转列合并
    • sql server 列转行
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1