AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 1021
Accepted
Greg B
Greg B
Asked: 2011-02-03 03:06:53 +0800 CST2011-02-03 03:06:53 +0800 CST 2011-02-03 03:06:53 +0800 CST

如何恢复多个备份

  • 772

我正在使用ExpressMaint和 Windows 计划任务创建一些 MS SQL Server 2008 R2 Express 数据库的每周完整备份和每日差异备份

每周满

expressmaint -S (local)\SQLExpress -D ALL -T DB -R D:\Backup\Reports -RU WEEKS -RV 1 -B D:\Backup\Data -BU WEEKS -BV 4 -V -C

每日差异

expressmain -S (local)\SQLExpress -D ALL -T DIF -R D:\Backup\Reports -RU WEEKS -RV 1 -B D:\Backup\Data -BU days -BV 7 -V -C

当我将这些恢复到某个点时,我必须单独恢复每个备份。有什么方法可以将一系列备份链接到一个还原中,然后以正确的顺序重新播放?

当我尝试这个时,我得到了错误

执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)


附加信息:

“C:\Foo\Bar_FullBackup_20110130_2346.bak”上加载的媒体被格式化为支持 1 个媒体系列,但根据备份设备规范,预计会有 2 个媒体系列。RESTORE HEADERONLY 异常终止。(Microsoft SQL Server,错误:3231)

如需帮助,请单击: http: //go.microsoft.com/fwlink ?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600&EvtSrc=MSSQLServer&EvtID=3231&LinkId=20476

编辑

当您右键单击数据库时,我正在使用任务菜单中的还原对话框。从那里,我选择“从设备恢复”并添加我希望从中恢复的 .bak 文件。

如果我只添加一个 .bak 文件,我没问题,如果我添加多个文件,我会收到上面的错误。

sql-server sql-server-2008
  • 3 3 个回答
  • 16692 Views

3 个回答

  • Voted
  1. Best Answer
    Eric Humphrey - lotsahelp
    2011-02-03T07:07:47+08:002011-02-03T07:07:47+08:00

    使用 SSMS,您不能在一个操作中链接备份的还原。您将不得不进行多次恢复。您将希望使用 T-SQL 以提高效率。

    --Restore the most recent full backup
    RESTORE DATABASE <mydb>
    FROM DISK = 'Path to full backup'
    WITH NORECOVERY, STATS=10 --If only restoring the full, change to RECOVERY
    
    --Restore the most recent diff backup
    RESTORE DATABASE <mydb>
    FROM DISK = 'Path to diff backup'
    WITH RECOVERY, STATS=10
    

    有关 RESTORE 的更多信息:http: //msdn.microsoft.com/en-us/library/ms186858.aspx

    • 10
  2. Ranjith Kumar
    2011-09-10T12:41:30+08:002011-09-10T12:41:30+08:00

    --恢复最近的完整备份

    RESTORE DATABASE <DATABASE NAME>
    FROM DISK = <Path to full backup>
    WITH NO RECOVERY
    

    --恢复最近的差异备份

    RESTORE DATABASE <DATABASE NAME>
    FROM DISK = <Path to differential backup>
    WITH NORECOVERY
    

    --恢复在最近一次差异备份之后进行的所有事务日志备份

    RESTORE DATABASE <DATABASE NAME>
    FROM DISK = <Path to first transactional log backup>
    WITH NORECOVERY
    

    . . . . .

    RESTORE DATABASE <DATABASE NAME>
    FROM DISK = <Path to last transactional log backup>
    WITH RECOVERY 
    
    • 6
  3. SQLRockstar
    2011-02-03T08:10:35+08:002011-02-03T08:10:35+08:00

    您正在尝试从设备恢复,但您真正想要做的是在 SSMS 中指定“从数据库”选项。GUI 应该会显示可用的备份文件,您可以选择完整文件和差异文件。

    • 4

相关问题

  • 死锁的主要原因是什么,可以预防吗?

  • 我在索引上放了多少“填充”?

  • 是否有开发人员遵循数据库更改的“最佳实践”类型流程?

  • 如何确定是否需要或需要索引

  • 从 SQL Server 2008 降级到 2005

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    您如何显示在 Oracle 数据库上执行的 SQL?

    • 2 个回答
  • Marko Smith

    如何选择每组的第一行?

    • 6 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    我可以查看在 SQL Server 数据库上运行的历史查询吗?

    • 6 个回答
  • Marko Smith

    如何在 PostgreSQL 中使用 currval() 来获取最后插入的 id?

    • 10 个回答
  • Marko Smith

    如何在 Mac OS X 上运行 psql?

    • 11 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Marko Smith

    将数组参数传递给存储过程

    • 12 个回答
  • Martin Hope
    Manuel Leduc PostgreSQL 多列唯一约束和 NULL 值 2011-12-28 01:10:21 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Stuart Blackler 什么时候应该将主键声明为非聚集的? 2011-11-11 13:31:59 +0800 CST
  • Martin Hope
    pedrosanta 使用 psql 列出数据库权限 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST
  • Martin Hope
    BrunoLM Guid vs INT - 哪个更好作为主键? 2011-01-05 23:46:34 +0800 CST
  • Martin Hope
    bernd_k 什么时候应该使用唯一约束而不是唯一索引? 2011-01-05 02:32:27 +0800 CST
  • Martin Hope
    Patrick 如何优化大型数据库的 mysqldump? 2011-01-04 13:13:48 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve