SQL恢复还原;挂在100%



我已经对此做了很多研究。

我正在尝试使用SQL Server 2014恢复数据库,并一直挂在100%。

很多人建议解决方案是确保您通过恢复选项还原。

我已经尝试过,它仍然以100%的速度悬挂。我已经通过SSMS还原对话框尝试了,并且尝试运行以下SQL语句:

USE [master]
RESTORE DATABASE [MyDB]
FROM  DISK = N'C:MyDB_backup_2015_05_05_010004_1506557.bak'
WITH  
    FILE = 1,  
    MOVE N'MyDB_Data' TO N'F:MSSQLDATAMyDB.mdf',  
    MOVE N'MyDB_Log' TO N'F:MSSQLDATAMyDB_1.ldf',  
    NOUNLOAD,  
    REPLACE,  
    RECOVERY,
    STATS = 2
GO

当我通过:

检查命令的状态时
SELECT r.status, r.command, r.wait_type, r.percent_complete
FROM sys.dm_exec_requests r
WHERE r.command like '%restore%' or r.command like '%backup%'

我得到:

status: suspended
command: RESTORE DATABASE
wait_type: BACKUPTHREAD
percent_complete: 100

从我的阅读中,这意味着还原正在等待备份完成,但是从我的查询中没有备份命令返回到sys.dm_exec_requests

edit :在再次尝试并运行上述查询以观察从一开始的还原进度之后,我可以看到"百分比_complete"值正在稳步增加,尽管事实是"状态"仍然为"暂停",而" wait_type"仍为" backupthread"。

因此,尽管它被"暂停",但实际上仍在执行还原。

所以我不知所措...

有人有任何想法在这里发生了什么或有关如何诊断问题的任何提示?

欢呼!

事实证明问题与环境相关,并且非常直接:

首先,我试图从原始数据库的非冲突备份版本中备份。

日志文件的大小实际上是一个已知问题,因此我们通常从数据库的缩减版本中备份。

因此,如果有人遇到类似问题,请先尝试缩小数据库,然后备份并从中恢复。

其次,我试图将数据库备份到USB3上的外部驱动器。

同样,有趣的是,我观看了工作恢复命令的进度,它也具有" wait_type" backupthread"的"暂停"状态 - 甚至在它仍在进行的同时(可以很明显地,完成的完成百分比增加了percon_complete)列!所以我仍然迷失了什么事...

,但至少我现在可以还原备份: - )

我遇到的问题是由于DB的大小。尽管备份显示了9 MB,但是当我右键单击SQL Server Management和Select属性中的DB时,显示的大小为25 GB!我所做的是,我将DB更改为"简单恢复",缩小日志文件,再次备份,现在可以还原。

最新更新