【问题标题】:How to move a database using a differential backup?如何使用差异备份移动数据库?
【发布时间】:2009-02-12 20:19:20
【问题描述】:

我使用的是 SQL Server 2005。

我需要将数据库移动到停机时间最短的新服务器。

目前我的选择是将所有内容脱机,执行备份,将备份复制到新服务器,恢复备份并将所有内容重新联机。

这里的问题是备份文件大约 10Gb,因此,执行整个操作大约需要 5-10 分钟。

我听说有人对在线上的所有内容执行完整备份,然后进行差异备份,这样可以复制的内容更少。

我已完成完整备份,将其复制到新服务器并恢复。然后我进行了差异备份并将其复制到新服务器。

问题是,当我尝试恢复此备份时,我收到消息“无法恢复日志或差异备份,因为没有准备好前滚的文件。”

我也尝试同时选择完整备份和差异备份,但随后我收到错误消息“设备 'D:\FullBackup.bak' 上的卷不是多系列媒体集的一部分。带格式的备份可用于形成一个新的媒体集。”

有谁知道我做错了什么以及最简单的方法是什么?

谢谢

【问题讨论】:

    标签: sql-server sql-server-2005 backup


    【解决方案1】:

    您似乎没有在完整的RESTORE 上设置NORECOVERY 选项。

    您需要此选项以保持所有事务不变,以便稍后应用差异备份。

    如果不设置,未提交的事务会在恢复完整备份时回滚,并且数据库的最后一个 LSN 大于差异备份的第一个 LSN

    【讨论】:

      【解决方案2】:

      另一种快速的方法是分离数据库,然后将数据库的底层 .mdf 和 .ldf 文件直接复制到数据库,然后重新连接。复制一个 10GB 文件所花费的时间将比备份少得多,而且效果相同。

      【讨论】:

      • 原始发帖人声明他们要求“最大限度地减少停机时间”。这将导致不必要的停机。
      • 引用问题“......让所有东西脱机......”分离和复制仍然准时获胜。
      猜你喜欢
      • 2011-03-19
      • 2011-10-02
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 1970-01-01
      • 2018-09-08
      • 2022-08-03
      • 2010-09-20
      相关资源
      最近更新 更多