none
不创建差异基准的完整备份 RRS feed

  • 问题

  • 各位好!

           在简单模式下,服务器是每天一个完整备份,因要在异地同步数据,传输完整备份时间有点长,我打算使用差异备份,我想设置一个备份计划,每周六一个完整备份修改差异基准,此后每天一个差异备份和一个不修改差异基准的完整备份,这样我只需要在远端服务器上每周六同步一个完整备份,每天同步一个差异备份,就实现数据同步操作,在近端服务器上还保留每天一个完整备份,所以我想知道如何使SQL Server 2008在完整的备份情况下不改变差异基准,需要改变是改变,如何操作?谢谢。


    2016年12月5日 13:51

答案

  • 备份的时候选择仅复制(copy only)即可,不会影响差异基准和事务日志链

    想不想时已是想,不如不想都不想。

    2016年12月8日 5:02
    版主

全部回复

  • Can't do that because differential backup backs whatever changed since last full backup. 
    2016年12月5日 17:10
  • 感谢您的回答,那就不能在完整备份前,将差异基准数据现备份一下,在完整备份完成后,在恢复一下差异基准吗?我没有找到差异基准是在那个地方以什么的形式存储,所以才问的.再次感谢您的回答.
    2016年12月6日 2:39
  • 资料在这里

    https://technet.microsoft.com/en-us/library/ms345448%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396


    Love SQL

    2016年12月6日 8:09
  • 备份的时候选择仅复制(copy only)即可,不会影响差异基准和事务日志链

    想不想时已是想,不如不想都不想。

    2016年12月8日 5:02
    版主
  • @Teige Gao “由于BitMap并不存储在数据库文件中”这句话不对,事实上,Differential Changed Map是在数据文件的第7页(page_id=6)。

    小宋那篇blog压根儿旧没提差异备份基准的事情。

    @rmiao 桦仔不靠谱也就罢了,你也忘记了copy only backup?


    想不想时已是想,不如不想都不想。


    2016年12月8日 5:09
    版主
  • 刚才忘记说了,copy only不能在SSMS里面操作,要用T-SQL或者Poweshell等代码/脚本的方式来做,可以放到SQL Agent Job里面定时执行。

    T-SQL sample:

    backup database your_db to disk='full filename ' with copy_only


    想不想时已是想,不如不想都不想。

    2016年12月8日 5:13
    版主
  • 不好意思,刚才查了一下,从 SQL Server 2008 开始,SQL Server Management Studio 就支持仅复制备份了。

    想不想时已是想,不如不想都不想。

    2016年12月8日 5:20
    版主
  • 怡红公子你好,

    感谢指出错误,经过测试,仅复制备份是可以达到修改基准的目的的,并且支持简单恢复模式。 谢谢

    @我是生命, 相关信息可以参考这篇文章 https://msdn.microsoft.com/zh-cn/library/ms191495(v=sql.110).aspx

    Best Regards,
    Teige

    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2016年12月8日 5:42
    版主
  • 非常感谢,我在论坛提问前看到了复制备份,之前我看到有一篇文章说差异基准是保存在master库,把这个库备份一下再还原,一直迷在这个答案上,没去想复制备份的事。感谢各位回复我的问题。
    2016年12月8日 6:30
  • 非常感谢。
    2016年12月8日 6:31
  • 保存在master的说法不对。就是每个数据文件里面都有的一个bitmap,bitmap的意思就是一个bit代表一个页(我不记得是页还是区了)是不是被完整备份过。如果数据库文件特别大,一页不够存这个map,还会有其它的页来存放。

    想不想时已是想,不如不想都不想。

    2016年12月8日 6:39
    版主
  • 是区                                

    Love SQL

    2016年12月8日 7:19
  • 是区                                

    Love SQL


    桦仔说得对,是区。另外再纠正一点,差异的基准LSN 存在 master 里面。不过做差异备份的时候不是去用 master 里面的数据做比较的。

    想不想时已是想,不如不想都不想。

    2016年12月8日 7:37
    版主