【发布时间】:2020-03-10 08:30:59
【问题描述】:
这是一个真正的万岁玛丽问题,因为我完全不知所措。在 Windows 10 x64 上使用 SQL Server 2017 Developer。我有一个备份文件并运行以下命令:
restore verifyonly from disk = 'f:\temp\northwind.bak';
它作为有效备份检出。但后来我运行这个命令:
restore database [northwind] from disk = 'f:\temp\northwind.bak' with replace;
进度达到 100%,但在完成之前我收到此错误消息,并且数据库进入 Recovery Pending:
为数据库“northwind”、文件“Northwind”处理了 348840 个页面 文件 1. 为数据库“northwind”处理了 3 页,文件 文件 1 上的“Northwind_log”。
消息 3167,第 16 级,状态 1,第 12 行
RESTORE 无法启动数据库“northwind”。消息 3013,第 16 级,状态 1,第 12 行
RESTORE DATABASE 异常终止。消息 5243,第 22 级,状态 8,第 12 行
在内部操作期间检测到不一致。
如果它应该是一个有效的备份文件,恢复怎么会失败?有什么想法可以看吗?
【问题讨论】:
-
只有 3 页?保存 Northwind_log 文件的卷看起来可能已满。
-
感谢您的建议。你是说磁盘卷吗?那里有足够的空间。
-
无论是什么块设备,都可以。错误 5243 表明它也可能是您要还原到的卷上与硬件相关的故障,参考:docs.microsoft.com/en-us/sql/relational-databases/errors-events/…
-
Northwind 和 pubs 一样,已经过时了 - 您最好使用 World Wide Importers 或 AdventureWorks 作为示例数据库。
标签: sql sql-server restore